【问题标题】:MailChimp integration with asp.netMailChimp 与 asp.net 的集成
【发布时间】:2016-06-01 21:33:51
【问题描述】:

我在使用 mailChimp 时遇到问题,我使用 HttpWebRequest 拨打了 PUT 电话以从列表中取消订阅用户,它工作正常,但与 POST 通话时所做的相同,状态为 @987654324 @ 然后它也有效。那么我应该拨打哪个电话取消订阅呢?

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

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";

【问题讨论】:

    标签: c# asp.net httpwebrequest mailchimp httpwebresponse


    【解决方案1】:

    这里不是硬性规定选择什么,而是解释为什么两个动词都起作用。

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

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

    但在大多数实际 API 中,遵循 100% REST 指南与提供面向操作的 API 之间的界限很模糊。例如(退订、取消等)

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

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

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

    【讨论】:

      猜你喜欢
      • 2016-01-10
      • 2021-02-25
      • 2020-10-16
      • 2020-12-18
      • 1970-01-01
      • 2014-04-06
      • 2019-03-19
      • 2015-01-08
      • 2013-02-20
      相关资源
      最近更新 更多