我试图为我的react本机应用程序部署一个云功能,当数据库中出现新节点时,它会向用户发送通知。为此,我使用了Expo的Push API,如下所示:https://docs . Expo . io/versions/v 32 . 0 . 0/guides/Push-notifications,并遵循以下教程:https://www.youtube.com/watch?v=R2D6J10fhA4
我已经能够很好地获取设备令牌并将它们保存到我的数据库中。但是,由于以下错误,我无法将该函数部署到我的数据库中:
31:27分析错误:意外的标记,应为,
它在“body:JSON”行中抛出了一个致命错误。stringify(消息)‘,就好像它希望在‘string’后面有一个逗号。我非常不确定如何从这里开始,并且似乎找不到任何解决这个具体问题的帖子。
感谢任何帮助和/或建议!谢谢你。
const functions = require('firebase-functions');
let fetch = require('node-fetch');
const admin = require('firebase-admin');
admin.initializeApp(functions.config().firebase);
exports.sendPushNotification = functions.database.ref('Omicron-Pi')
.onCreate(event => {
const root = event.data.ref.root;
let messages = [];
root.child('Omicron-Pi/profiles').once('value').then((snapshot) => {
snapshot.forEach((childSnapshot) => {
let pushToken = childSnapshot.val().pushToken;
if (pushToken) {
messages.push({
to: pushToken,
body: 'New Node added'
});
}
});
return Promise.all(messages);
}).then(messages => {
fetch('https://exp.host/--/api/v2/push/send', [
method: 'POST',
headers: {
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify(messages)
]);
});
});
< code>fetch()的第二个参数是一个具有初始化属性的对象,但是您传递的是一个数组。
要修复它,请使用{}
而不是[]
:
fetch('https://exp.host/--/api/v2/push/send', {
method: 'POST',
headers: {
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify(messages)
});
要了解更多信息,请阅读有关如何在 MDN 上使用 fetch 的文档。
我在过去多次部署Firebase功能。由于某些原因,最近(大约2-3天)我经常在部署时出错。我使用windows来释放代码。当我尝试在我的Linux系统和Mac系统中设置相同的项目时,部署工作正常。从Windows环境发布可能存在的问题。 以下是部署时遇到的问题。 ! 功能[付款(us-central1)]:部署错误。加载用户代码时函数失败。这可能是由于用户代码中的错误造成的。错误消息:错误:请检
我已经使用firebase云函数一段时间了,今天在代码中修复了一个小错误,在尝试部署时出现了以下错误。我取消了该更改,并尝试使用上次提交的稳定更改再次部署,但仍然是相同的错误。有什么解决办法吗?PS:这是一个typescript项目,我用tsc编译它。
使用在嵌套目录中部署带有处理程序的lambda时遇到问题。 我执行以下步骤: > 包装: sam包——模板。yaml——打包的输出模板文件。yaml--s3铲斗 创建我在下一步中使用的packaged.yaml。 部署: AWS部署模板文件 /Users/localuser/Do/learn-sam/dynamo-stream-lambda/packaged.yaml 错误 云信息/SAM模板 目
我已经设置和快速服务器上运行Firebase云功能。现在,我试图使用CLI使用“Firebase部署-仅函数”将其部署到Firebase,但每次都失败,说有一个意外的令牌。我怀疑在index.js文件中使用异步箭头函数有问题,但我不确定,我也需要它们来完成我的项目。 这是索引。js文件: 以下是我在尝试运行firebase deploy(仅限函数)时遇到的错误: ==部署到“homunculus-
我收到 400 个错误的 AJAX 发布方法请求。我正在后端使用Spring数据Rest服务。以下是我在JS前端的代码 尽管我正在序列化 JSON 数据。我仍然收到400错误请求错误。如果后端的某些代码中断或发送到服务器的请求出现问题,则会出现此错误吗? JAVA实现
我正在尝试通过GitLab CI/CD将云函数从GitLab中的存储库部署到Google云函数。我得到了标题和下面的错误。 错误:(gcloud.functions.deploy)ResponseError:status=[403],code=[probled],message=[Permission'cloudfunctions.functions.get'denied on resource'