我目前有一个处理推送通知的遗留项目,其订阅者群在 Firebase 中,因为订阅使用 gcloud 平台中的功能是以下技术。
节点:“10”firebase-admin“:”^ 8.9.2“,firebase-functions”:“^ 3.3.0”
创建通知时,会生成一个 .json 文件,该文件将发送到不同的 vps,与将通知分派给 base 的订阅者相同。
然而,从本月 11 日开始,它开始抛出随机 502 错误,这是以前没有发生过的。发送 502 的函数是下一个:
return webpush.sendNotification(suscription,data,options)
.then((r) => {
console.log('r',r);
})
.catch((err) => {
console.log('err',err);
if (err.statusCode === 410) {
log('Rem '+ key);
return suscribersref.child(key).set(null);
}
else if(err.statusCode === 404 || err.statusCode === 400){
log('Not a valid endpoint, status code: '+ err.statusCode);
log('Rem '+ key);
return suscribersref.child(key).set(null);
}
else {
log('Subscription is no longer valid: ', err);
log('Rem '+ key);
return suscribersref.child(key).set(null);
}
});
没有对实施进行任何更改。在 CMS(CMS 在 python 3.6 中)方面,我在日志中收到以下错误:
requests.exceptions.ReadTimeout: HTTPSConnectionPool (host = 'pol.firebaseio.com', port = 443): Read timed out. (read timeout = 60)
触发它的代码行如下:
fb = firebase.FirebaseApplication(settings.FIREBASE_URL, None)
NotifyServers = fb.get('/nserv', None)
它如何增加响应时间以及可能导致它的原因是什么?谢谢。