我正在尝试测试Firebase云消息传递API,因为控制台无法使用所有功能(特别是在应用程序处于后台时自定义通知).但由于某些原因,我无法让它工作,它总是出现401错误.我调查了这个的原因,并在重新生成新的服务器密钥后尝试了它,但错误保持不变.令人惊讶的是,当我生成新的服务器密钥时,它不会反映在Firebase控制台中,并且它将服务器密钥显示为空.此外,我尝试将我的IP地址添加到服务器白名单IP但仍然没有运气.我附上了一个我用Postman做的请求的截图(我用服务器密钥代替serverKey.
我正在使用此代码通过C#和GCM发送通知消息,使用Winforms,Webforms等等.现在我想发送到FCM(Firebase云消息传递).我应该更新我的代码吗?:
public class AndroidGCMPushNotification
{
public AndroidGCMPushNotification()
{
//
// TODO: Add constructor logic here
//
}
public string SendNotification(string deviceId, string message)
{
string SERVER_API_KEY = "server api key";
var SENDER_ID = "application number";
var value = message;
WebRequest tRequest;
tRequest = WebRequest.Create("https://android.googleapis.com/gcm/send");
tRequest.Method = "post";
tRequest.ContentType = " application/x-www-form-urlencoded;charset=UTF-8";
tRequest.Headers.Add(string.Format("Authorization: key={0}", SERVER_API_KEY));
tRequest.Headers.Add(string.Format("Sender: id={0}", SENDER_ID));
string postData = "collapse_key=score_update&time_to_live=108&delay_while_idle=1&data.message=" + value + "&data.time=" + System.DateTime.Now.ToString() + "®istration_id=" + deviceId + "";
Console.WriteLine(postData);
Byte[] byteArray = Encoding.UTF8.GetBytes(postData);
tRequest.ContentLength = …Run Code Online (Sandbox Code Playgroud) 我想得到互联网的图片并插入到单词中.
我用这个代码.
MainDocumentPart mainPart = wordprocessingDocument.MainDocumentPart;
System.Net.WebRequest request =
System.Net.HttpWebRequest.Create("http://spsdev2:1009");
System.Net.WebResponse response = request.GetResponse();
ImagePart imagePart = mainPart.AddImagePart(ImagePartType.Jpeg);
//Send an HTTP request and get the image at the URL as an HTTP response
HttpWebRequest myReq = (HttpWebRequest)WebRequest.Create(fileName);
WebResponse myResp = myReq.GetResponse();
//Get a stream from the webresponse
Stream stream = myResp.GetResponseStream();
Run Code Online (Sandbox Code Playgroud)
我在myReq.GetResponse()中收到错误;
错误:远程服务器返回错误:(401)未经授权.
编辑
这段代码对我有用:)
myReq.UseDefaultCredentials = true;
myReq.PreAuthenticate = true;
myReq.Credentials = CredentialCache.DefaultCredentials;
Run Code Online (Sandbox Code Playgroud) 您可能已经看到,Google正在迁移其推送通知系统.
http://developer.android.com/guide/google/gcm/c2dm.html
是否有任何示例或指南可用于使用Asp.Net应用程序实施Google Cloud Messaging(GCM)?
我有一个用 .NET Core 编写的 REST Api,现在需要创建一个Push Notificationto Firebase Cloud Messaging (FCM). 为了测试,我正在使用Firebase Console但我需要以编程方式完成这项工作。我已经通过 Google 浏览了 Firebase 的文档和一些示例,但更困惑。
我认为可以通过常规创建消息,Http但是有人可以发布一个简单的工作示例以便我可以选择吗?或者,我的理解是完全错误的?