mailerlite API对订阅者端点的错误代码422
今天,我正在实现 PiCockpit.com 和Mailerlite API(我们使用的是 aus 我们的通讯软件)。
https://api.mailerlite.com/api/v2/subscribers
我得到了以下错误信息。
{"错误":{"代码":422, "消息": "无法处理的实体"}}。
POST请求的状态码是422。
不幸的是,Mailerlite上几乎没有这方面的文件。我的实现是正确的(顺便说一句,这是Crystal Lang)。
get "/test" do |env|
body = "{\"email\":\[email protected]\"}"
放置body
response = HTTP::Client.post("https://api.mailerlite.com/api/v2/subscribers",
headers:HTTP::Headers{
"X-MailerLite-ApiKey" => "MAILERLITE_APIKEY",
"Content-Type":"application/json"
},
body: body)
if response.status_code != 201
puts "newsletter_subscription :: error code #{response.status_code}"
puts response.body
否则
puts "newsletter_subscription ::确定"
放置响应.body
结束
结束
其中MAILERLITE_APIKEY是你在后台创建的API密钥。
https://dashboard.mailerlite.com/integrations/api
(点击 "生成新标记",它只显示给你一次)。
如何在调用Mailerlite API的subscribers端点时解决422的问题
mailerlite的支持给了我解决方案。
某些电子邮件地址被拒绝 - 例如,支持@的电子邮件地址。这是由于这些地址的反弹率较高。
成功的回应是什么样子的?
如果使用不同的电子邮件地址,响应看起来是这样的。
{"id":234892342834, "name":"", "email": "[email protected]", "send":0, "open":0, "open_rate":0, "clicked":0, "clicked_rate":0, "type": "unconfirmed", "country_id":", "signup_ip":null, "signup_timestamp":null, "confirmation_ip":null, "confirmation_timestamp":null, "field":[{"key": "last_name", "value":", "type": "TEXT"},{"key": "company", "value":", "type": "TEXT"},{"key":"country", "value":"", "type": "TEXT"},{"key": "city", "value":"", "type": "TEXT"},{"key": "phone", "value":", "type": "TEXT"},{"key": "state", "value":"," type":”TEXT”},{“key”:”z_i_p”,”value”:””,”type”:”TEXT”}],”date_subscribe”:”2022-05-19 12:09:24″,”date_unsubscribe”:null,”date_created”:”2022-05-19 12:09:24″,”date_updated”:”2022-05-19 12:09:24″}
响应代码是 201,"创建"。
雇用我们
如果你的后台或前台开发需要支持,你可以雇用我们。 联系我们以了解更多信息.