- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
给定简单的功能;如果我只是控制台日志“上下文”,我会得到一个带有拖曳参数的日志,但如果我按照下面的示例专门控制台日志(或以其他方式引用)单个参数,我会看到这个 firestoreInstance.settings
错误。如果有人能指出正确的方向,我将不胜感激。
import * as functions from 'firebase-functions';
import * as admin from 'firebase-admin';
admin.initializeApp();
exports.newNotification = functions.firestore
.document('/messages/{senderUsername}/threads/{recipientUsername}/lines/{docId}')
.onCreate((snap, context) => {
const message = snap.data();
const sender = context.params.senderUsername;
const recipient = context.params.recipientUsername;
console.log('Notifying', message, sender, recipient);
});
错误如下:
编辑---所以它看起来是断断续续的。我发射了一条消息,然后等待并发射了另一条消息 - 一条消息返回了错误,另一条消息返回了所需的结果。
也许它与时间戳(服务器时间戳)有关?
编辑--
所以我将代码更改为以下内容:
exports.newNotification = functions.firestore.document('/messages/{senderUsername}/threads/{recipientUsername}/lines/{docId}')
.onCreate((snap, context) => {
const message = snap.data();
const sender = context.params.senderUsername;
const recipient = context.params.recipientUsername;
console.log('Notifying', message, sender, recipient);
const deviceRef = admin.firestore().doc(`/devices/${recipient}`);
deviceRef.get().then(doc => {
const val = doc.data();
const payload = {
notification: {
title: 'New Message!',
body: `${sender}: ${message.msg}`
}
};
const token = val.token;
return admin.messaging().sendToDevice(token, payload);
}).catch(err => console.log(err));
});
看来我们又回到了错误——偶尔会有一个成功通过。后台处理延迟/观察者订阅时间延长会导致此类问题吗?
这是上下文的控制台日志,作为评论请求:
郑重声明,我尝试删除消息之间的标记,但它应该被捕获。我在设备 token 的开头添加了一些字符,它返回了常见的错误 - 我将继续测试,如果 token 无效并且需要更新,这就是您遇到的错误吗?
编辑--
我不知情的结论是,在函数以某种缓存方法形式化之前,函数有一个冷启动 - 也许我会因为在这些“固化”时刻之间进行测试而遇到间歇性错误。如您所见,它从错误到延迟再到几乎即时。如果知情人士对此有一些了解,仍然希望对这个主题有所了解。
编辑--
我发现,如果时间流逝,工作功能可能会死亡,然后它似乎会死而复生,并且在它以您的更多执行为食并再次恢复健康之前可能会有点迟钝:
最佳答案
将 firebase-admin 更新到最新版本 (5.13.1) 后,它可以正常工作。看来 firebase-functions v2 需要 firebase-admin 5.13.0 或以上版本!
关于javascript - Firebase Cloud Functions - 上下文参数引用带来错误 : firestoreInstance. settings is not a function at snapshotConstructor,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51604180/
当我为我的项目运行“mvn dependency:tree”时,它显示如下: [INFO] --- maven-dependency-plugin:2.8:tree (default-cli) @ x
我调用 ajax 的脚本 function search_func(value) { $.ajax({ type: "GET", url: "sample.php
我正在使用 SIM 安装 Sitecore 8.1,但在打开启动板时,由于 ajax 请求返回 HTTP 500 错误,出现了几个 Javascript 错误。查看开发人员工具会显示以下消息: htt
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the
我有一张 table : +-----------+-------------+------+-----+---------+-------+| Field | Type | N
所以,我对这个阵列很生气,第 2 天让我感到疼痛 *.... 我正在开发面向对象的 PHP 脚本。 我得到一个数组: Array ( [0] => Project Object ( [project_
我正在尝试将我的一个 Rails 项目升级到 Ruby 1.9.2。一切进展顺利,但一个 RSpec 测试失败了。在这个测试中,我需要一个Ruby lib: # file spec/models/my
我可以使用 Maven 的插件 spring-boot:run 运行 Spring Boot,但是当我尝试执行打包的 jar 时,它给出: Error creating bean with name
我是一名优秀的程序员,十分优秀!