mailchimp api的json post请求中出错
本文关键字:请求 出错 post json api mailchimp | 更新日期: 2023-09-27 18:30:02
我正在尝试为以下内容创建一个包装器:这种使用C#.Net 的mailchimp方法
据我所知,已经有.Net包装器可用。我正在使用Dan Esparza的Mailchimp.Net。包装器类中的方法为上面提到的api方法提供了异常。它抛出了内部服务器异常(500),我不知道为什么,所以我决定为特定方法创建自己的包装器。我有以下代码:
private void CreateGrouping(string apiKey, string listId,string groupName,string groupValue)
{
string url = "https://us9.api.mailchimp.com/2.0/lists/interest-grouping-add";
var httpWebRequest = (HttpWebRequest)WebRequest.Create(url);
httpWebRequest.ContentType = "text/json";
httpWebRequest.Method = "POST";
List<string> values = new List<string>();
values.Add(groupValue);
using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream()))
{
string json = new JavaScriptSerializer().Serialize(new
{
apiKey = apiKey,
id = listId,
name = groupName,
type="radio",
groups = values
});
streamWriter.Write(json);
}
var response = (HttpWebResponse)httpWebRequest.GetResponse();
using (var streamReader = new StreamReader(response.GetResponseStream()))
{
var result = streamReader.ReadToEnd();
}
}
但在执行var response = (HttpWebResponse)httpWebRequest.GetResponse();
时抛出了相同的异常——内部服务器错误(500)。可能是我以错误的方式传递数据?有人能帮我找出我在这里缺了什么吗?
因为我怀疑我以错误的方式传递数据:apiKey必须是apiKey(k是大写的)
string json = new JavaScriptSerializer().Serialize(new
{
apikey = apiKey,
id = listId,
name = groupName,
type="radio",
groups = values
});
除此之外,我补充道:
streamWriter.Flush();
streamWriter.Close();
这可能有助于人们节省一些时间。