所以...今天早上...我收到一封电子邮件,说:
我们的记录显示您拥有使用App Engine应用程序的项目,或者仍在调用GA前v0.1和v1beta1版本的云功能App Engine和Cloud Functions元数据服务器的端点。
我们谨在此通知您,这些旧式端点是计划于2020年4月30日关闭。2020年4月30日之后,对v0.1和v1beta1端点的请求将不再支持,并且可能返回HTTP 404 NOT FOUND响应。
我仅使用Firebase函数发送消息...,然后电子邮件继续将sendMessage函数标识为罪魁祸首。但是我不能...为了我的生命...弄清楚我需要在哪里更新端点。我的sendMessage函数如下:
exports.sendMessage = functions.database.ref('/messages/{receiverUid}/{senderUid}/{msgId}')
.onWrite(async (change, context) => {
const message = change.after.val().body;
const receiverUid = change.after.val().receiverUid;
const senderUid = change.after.val().senderUid;
const msgId = change.after.val().msgId;
if (!change.after.val()) {
return console.log('Sender ', senderUid, 'receiver ', receiverUid, 'message ', message);
}
console.log('We have a new message: ', message, 'for: ', receiverUid);
我已经尝试遵循此链接中的一些Curl建议:https://cloud.google.com/compute/docs/migrating-to-v1-metadata-server
...但是每次我尝试其中之一时,都会得到:
卷曲:(6)无法解析主机'metadata.google.internal'
所以...在这一点上...我不知道我应该改变什么或者应该去哪里看。任何帮助,将不胜感激。
我在https://github.com/firebase/firebase-functions回购最新版本(3.3.0)中进行搜索,然后找到了文件:spec / fixtures / https.ts。在此文件中,有一些模拟函数,这些函数使用旧的:/ computeMetadata / v1beta1端点。
这可能意味着应该将firebase-functions模块软件包更新为使用/ computeMetadata / v1端点。
以前,我发现package.json
中的这个旧依赖性正在拖动其他非常旧的软件包:
"@google-cloud/functions-emulator": "^1.0.0-beta.6",
特别是它带来了gcs-resumable-upload
v 0.10.2,低于Google建议的v 0.13.0(请参阅https://cloud.google.com/compute/docs/migrating-to-v1-metadata-server#apps-to-update)。可能还有其他人。
解决方法是:
@google-cloud/functions-emulator
,或@google-cloud/functions-framework