public async static void SendPushToTokenID(string tokenID, string title, string body)
{
HttpClient client = new HttpClient();
client.DefaultRequestHeaders.TryAddWithoutValidation("Content-Type", "application/json");
var url = serverURL;
client.DefaultRequestHeaders.TryAddWithoutValidation("Authorization", "key=" + serverKey);
var notification = new
{
title = title,
body = body
};
var postModel = new
{
to = tokenID,
notification = notification
};
var response = await client.PostAsJsonAsync(url, postModel);
// format result json into object
string content = await response.Content.ReadAsStringAsync();
string xw = (response.Content.ReadAsStringAsync().Result);
}
8条答案
按热度按时间nzrxty8p1#
只是为了帮忙,
如果有人想使用REST POST API,请使用以下配置的Postman
网址:
https://fcm.googleapis.com/fcm/send
标题:
正文:
就是这样。谢谢!!!
如果您想了解更多关于富通知与FCM的细节,可以查看我的文章Medium Rich Push Notification with Firebase Cloud Messaging (FCM) and Pusher on iOS platform
k5hmc34c2#
我使用了下面的REST API来发送通知。
授权人:我的意思是说,如果你是一个人的话,那么你就可以把它当作一个人来看待,而不是一个人来看待。
其中key是来自控制台的web_server_key,您需要指定将从应用程序获取的唯一注册密钥。
“到":“ey_Bl_xs-8 o:APA 91 bERoA 5 mXVfkzvV 6 I1 I8 r1 rDXzPjq 610 twte 8 SUpsKyCuiz 3 itcIBgJ 7 MyGRkjmymhfsceYDV 9 Ck-__ObFbf 0 Guy-P_Pa 5110 vS 0 Z6 cXBH 2 ThnnPVCg-img 4lAEDfRE 5I 9 gd 849 d”是来自设备的FCM注册令牌。请参考以下链接。
https://firebase.google.com/docs/cloud-messaging/android/client?authuser=0
vdgimpew3#
这可能会有所帮助-https://firebase.google.com/docs/cloud-messaging/http-server-ref,您可以在此处找到示例消息-https://firebase.google.com/docs/cloud-messaging/downstream
从Firebase控制台,您可以在"云消息传递“选项卡中获取服务器密钥,作为您放在http标头中的授权。
ulydmbyx4#
使用ARC向Firebase控制台发送请求以发送通知
您可以使用ARC或Postman或您自己的服务器发送通知。您需要从控制台收集您的web_server_key,并且需要指定调用
onRefreshToken()
方法时将从应用程序获取的唯一注册密钥。您需要将请求发送到https://fcm.googleapis.com/fcm/send,内容类型:json和授权:web_server_key.在应用注册令牌的收件人值用户上。
z9smfwbn5#
试试这个
网址- * https://fcm.googleapis.com/fcm/send *
方法- * 后 *
标题
正文
5lwkijsr6#
我们使用以下文档从Web客户端发送通知。
有一种简单的方法可以通过Chrome应用程序或扩展发送通知。
jgzswidk7#
对于C#应用程序(Xamarin.Forms等)你可以只复制下面的代码:
对于url用途:https://fcm.googleapis.com/fcm/send和你的服务器密钥使用你的firebase服务器密钥。这就是全部。只是不要忘记在你的服务器上存储设备令牌ID,然后你可以整天免费向个人用户发送消息。这非常简单。
tyky79it8#
新版本的API(称为v1)创建了更多的挑战,以通过ARC发送消息。您需要一个特殊的令牌,该令牌将过期。您必须在firebase控制台中创建firebase admin sdk密钥(服务帐户密钥):
Firebase-admin sdk
它们的密钥是以json格式存储的,大概是这样的:
在获取http通信的令牌时,密钥用于识别您的身份。您需要一种服务器访问firebase的方式。我在WSL中使用了python,其中包含以下代码:
其中service-account.json是运行python的文件系统上的文件中的私钥。
ARC配置与旧版API中的配置类似,但有一些更改。URL已更改,其中包含您的项目ID:
我们仍然使用POST方法,头文件只有一行内容类型application/json。身份验证有一个单独的标签,我们应该使用Python中的Bearer + token:
Firebase authentication
选择并启用Bearer非常重要,因为它在默认情况下是禁用的。
更改也在正文中。这是基于应用程序令牌发送给单个应用程序的消息示例:
其中关键字“to”已更改为“token”。仅此而已,我们可以将消息发送到应用程序。我希望将它放在这里,以便能够按照Goggle目前的要求迁移到API v1。最后一段代码用于curl:-)
下面是我使用的源代码:
Firebase cloud messaging doc
用于消息传送的GIT HUB代码