我正在尝试使用HTTParty在Mailchimp V3列表中添加合并字段,但无法将curl转换为HTTParty格式。
卷曲请求格式正常工作:
curl --request POST \
--url 'https://usxx.api.mailchimp.com/3.0/lists/17efad7sd4/merge-fields' \
--user '12:d1c1d99dr5000c63f0f73f64b88e852e-xx' \
--header 'content-type: application/json' \
--data '{"name":"FAVORITEJOKE", "type":"text"}' \
--include
缺少错误API密钥的Httparty格式
response = HTTParty.post("https://us12.api.mailchimp.com/3.0/lists/17efad7sde/merge-fields",
:body => {
:user => '12:d1c1d99dr5000c63f0f73f64b88e852e-xx',
:data => '{"name":"FAVORITEJOKE", "type":"text"}',
:include => ''
}.to_json,
:headers => { 'Content-Type' => 'application/json' } )
我也尝试没有包含选项但没有工作
答案 0 :(得分:6)
您的代码中存在多个错误。
user
是基本的身份验证用户,但您将其传递给请求的有效负载这应该是正确的版本。请花点时间阅读HTTParty
和curl
文档并了解其中的差异。
HTTParty.post(
"https://us12.api.mailchimp.com/3.0/lists/17efad7sde/merge-fields",
basic_auth: { username: "12", password: "d1c1d99dr5000c63f0f73f64b88e852e-xx" },
headers: { 'Content-Type' => 'application/json' },
body: {
name: "FAVORITEJOKE",
type: "text",
}.to_json
)