MailChimp 与 asp.net 的集成

MailChimp integration with asp.net

我遇到了 mailChimp 的问题,我用 HttpWebRequest 调用 PUT 取消订阅列表中的用户,它工作正常,但我用 [=14] 做的事情是一样的=] 调用状态为 unsubscribed 那么它也可以工作。那么我应该打哪个电话退订呢?

HttpWebRequest 中添加了 mailChimp Api 键的示例代码 headers:

string subscriberEmail = "XXXXXX";
//Create JSON Object for sending to MailChimp

var subscribeRequest = new
{
    status = "unsubscribed",
    email_address = subscriberEmail, //E-Mail
 };
var requestJson = serializer.Serialize(subscribeRequest);
HttpWebRequest httpWebRequest =(HttpWebRequest)HttpWebRequest.Create(https://XXX.api.mailchimp.com/3.0/lists/XXXXXX/members");
httpWebRequest.Method = "POST";    
httpWebRequest.ContentType = "text/json";                               
httpWebRequest.Accept = "text/json";

这里没有关于选择什么的硬性规定,而是解释了为什么这两个动词都有效。

许多 API 提供程序支持 PUT 和 POST 动词的相同操作。

在纯粹的 REST 术语中,这些动词具有特定的指导原则 POST 用于创建新资源和 PUT 用于更新资源。

但在大多数现实世界中 APIs,遵循 100% REST 准则与提供面向行动的 APIs 之间的界线模糊。例如(退订、取消等)

因此,使用 POST 或 PUT 并不重要,因此很多 API 提供商都支持这两种方法。在内部,它们往往总是经过相同的代码路径,因此您应该在两种情况下看到相同的行为。

当 PUT 和 POST 都可用于面向操作的 APIs(取消订阅、取消等)时,我看到人们更喜欢 POST 动词,因为它更直观和自然在非只读 API.

但是真的没有硬性规定,所以无论你决定坚持什么。