【问题标题】:Sending an Array with HTTParty Gem使用 HTTParty Gem 发送数组
【发布时间】:2016-05-29 17:47:11
【问题描述】:

我正在使用 HTTParty Gem 将数据发送到 SugarCRM API。

我成功地通过 API 进行身份验证,现在我希望通过向 API 发布数据来创建潜在客户。

我在尝试发送 name_value_pair 字段时遇到了问题,这些字段在 Sugar CRM 文档中应该像这样发送 --

"name_value_list" => array(
    array(
        'name' => 'last_name',
        'value' => 'Victor',
    ),

    array(
        'name' => 'phone_mobile',
        'value' => ‘9999999999’
    ),
),

试图把它转换成 Ruby,我得到了这个作为我的要求 --

response2 = HTTParty.post(base_uri,
        body: {
          method: "set_entry",
          input_type: "JSON",
          response_type: "JSON",
          rest_data: {
            session: session_id,
            module_name: 'Leads',
            name_value_list:
              [
                [
                  'name', 'last_name'
                ],
                [
                  'value', 'Victor'
                ],
              ]
          }.to_json
        },
        debug_output: $stdout
      )

但是,CRM API 向我返回了 500 错误。如何构建此数组数据,使其模仿name_value_list 字段的 PHP 文档

【问题讨论】:

    标签: ruby-on-rails ruby sugarcrm httparty


    【解决方案1】:

    我在“关联数组”中查看了http://www.w3schools.com/php/php_arrays.asp,我认为您拥有的 PHP 打算将键/值对作为散列而不是数组。所以我建议试试这个:

    name_value_list:
       [
          {
             'name' => 'last_name',
             'value' => 'Victor'
          },
       ]
    

    (唯一的变化是内部方括号转换为花括号。)

    【讨论】:

      【解决方案2】:

      那么尝试将原始字符串转换为HTTParty 的字符串,即:

      name_value_list:
         [
            [
               'name' => 'last_name',
               'value' => 'Victor'
            ],
         ]
      

      【讨论】:

      • 我试过了,但还是没用 :( 这是发送的 JSON 对象 - {"session":"lf4kit2mt7c964ba3eqiok5k34","module_name":"Leads","name_value_list":[["name","last_name"],["value","Victor"]]}
      • @MichaelVictor 需要 JSON 对象吗?
      猜你喜欢
      • 1970-01-01
      • 2014-10-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-07-06
      相关资源
      最近更新 更多