【发布时间】:2016-02-06 03:57:55
【问题描述】:
我已经引用了这个链接来发送 GCM 请求,它工作得很好。 gcm-push-notification-with-asp-net
我又推荐了一个链接发帖JSONhow-to-post-json-to-the-server
在第二个链接的基础上,我尝试了以下代码。
var httprequest = (HttpWebRequest)WebRequest.Create("https://gcm-http.googleapis.com/gcm/send");
httprequest.ContentType = "application/json";
httprequest.Method = "POST";
httprequest.Headers.Add(string.Format("Authorization: key={0}", GCM.APIKey));
httprequest.Headers.Add(string.Format("Sender: id={0}", GCM.ProjectNo));
using (var streamWriter = new StreamWriter(httprequest.GetRequestStream()))
{
string json = new JavaScriptSerializer().Serialize(new GCMValues
{
delay_while_idle = false,
priority = "high",
registration_id = regId,
data = new MessagesValues
{
message = message
}
});
streamWriter.Write(json);
streamWriter.Flush();
streamWriter.Close();
}
var httpResponse = (HttpWebResponse)httprequest.GetResponse();
using (var streamReader = new StreamReader(httpResponse.GetResponseStream()))
{
var result = streamReader.ReadToEnd();
}
我使用过的属性
public class GCMValues
{
public Object data { get; set; }
public bool delay_while_idle { get; set; }
public String priority { get; set; }
public String registration_id { get; set; }
}
public class MessagesValues
{
public String message { get; set; }
public DateTime? time { get; set; }
}
我面临的问题是var httpResponse =(HttpWebResponse)httprequest.GetResponse();
我收到了错误请求的响应。
我哪里出错了,或者可以做些什么来以JSON 格式为GCM 发布请求传递值。
提前致谢。
【问题讨论】:
标签: asp.net json google-cloud-messaging