4

我正在为 Mailchimp 的 restful Services V3.0 创建一个 Coldfusion/Railo API 包装器。GET 请求工作正常,但我在将数据放入 Mailchimp 时遇到问题。

我的代码格式是:

httpService.setMethod("PUT") ;

httpService.setURL("https://us12.api.mailchimp.com/3.0/lists/d9****81/members/e311cfde*****************2dda77c0") ;

httpService.addParam(type="URL",name="apikey", value="*******************-us12"); 

httpService.addParam(type="URL",name="user", value="jnicola2:******************-us12"); 

httpService.addParam(type="BODY",name="status", value="Subscribed") ;

httpService.addParam(type="BODY",name="email_address", value="*****@*****.co.uk") ; 

httpService.addParam(type="BODY",name="interests", value="{"ae4****7e5":true,"675****75a":true,"1ab****7f":false,"cf0****8ef":true,"38be****2a":false}") ;

响应错误 errordetail: 401 Unauthorized filecontent: {"type":" http://developer.mailchimp.com/documentation/mailchimp/guides/error-glossary/ ","title":"API Key Missing","status": 401,"detail":"您的请求未包含 API 密钥。","instance":""}

我的电话怎么了?

4

1 回答 1

3

您必须将 apikey 放在 Authorization 标头中,请参见以下示例:

var requestBody = {"email_address"="*****@*****.co.uk", "status"="subscribed"};

httpService = new 
http(url="https://us12.api.mailchimp.com/3.0/lists/d9****81/members",method="POST",timeout=3);

httpService.addParam(type="header", name="Content-Type", value="application/json");

httpService.addParam(type="header",name="Authorization", value="apikey *******************-us12");

response = httpService.send().getPrefix();

dump(response)
于 2016-09-14T08:42:59.683 回答