首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Nexmo:接收SMSes

Nexmo:接收SMSes
EN

Stack Overflow用户
提问于 2020-02-15 18:53:08
回答 1查看 126关注 0票数 1

作为Nexmo的一个新手,我找到了一种使用Firebase 这里接收这里的简单方法。

初始化Firebase之后:

代码语言:javascript
复制
firebase init functions

写入生成的index.js

代码语言:javascript
复制
const functions = require('firebase-functions');
const admin = require('firebase-admin'); 

admin.initializeApp();

exports.inboundSMS = functions.https.onRequest(async (req, res) => {
  await admin.database().ref('/msgq').push(req.body);
  res.send(200);
});

然后使用以下方法将代码部署到Firebase:

代码语言:javascript
复制
firebase deploy --only functions

它产生一个回调URL (web钩子),类似于:

代码语言:javascript
复制
https://us-central1-nexmo-project.cloudfunctions.net/inboundSMS

通过在Nexmo仪表板的API设置中添加上面的URL,这些消息将被Firebase DB抓取。

现在我有两个问题。

第一个问题是许可问题:作者声称Firebase“随付即付”计划需要使用第三方API。这是什么意思?网络钩子消费者不是一直都是第三方吗?我在火场上找不到任何有用的提示。

第二个问题是保护回调URL的安全。似乎每个人都可以通过URL发送数据,那么我如何才能避免垃圾邮件和浏览URL呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-02-16 16:34:47

很高兴你发现我的职位有用。

回答你的问题-

  1. 如果您正在使用Nexmo发送短信,或任何其他需要您调用第三方API的服务,则需要使用Firebase的付费服务。如果您只想使用它作为一个从外部源调用到Firebase的web钩子,那么空闲层应该是可用的。不同之处在于调用外部API。谷歌更好地解释了这类呼叫-- 原料药。谷歌的网络调用不应该包括在其中--使用Firebase的好处之一。
  2. 保护网络钩子有几种选择。首先,它不是一个容易发现的URL,所以保持它的私有应该是最初的防御线。Nexmo还有一个IP列表,可以在这里白名单- https://help.nexmo.com/hc/en-us/articles/204015053。在报头中,您应该能够定位并验证IP,然后再允许它做任何其他事情,或者干脆把它踢出去。

如果这有帮助的话请告诉我!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60242078

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档