http - Callable Cloud Functions 是否优于 HTTP 函数?

标签 http firebase https google-cloud-functions

用最新的Firebase Update引入了可调用函数。我的问题是this new way是否比 "old" http triggers 快以及它是否更安全。

我在这个领域没有专业知识,但我认为 HTTP 与 HTTPS 可能会有所不同。

这对我来说很有趣,因为如果可调用函数更快,它们就有优势,但它们的缺点在于灵 active 的本质:它们不能被其他来源访问。

如果可调用函数在速度或安全性方面没有优势,我看不出有理由改变它。

最佳答案

可调用函数与 HTTP 函数完全相同,只是提供的 SDK 为您做了一些您不必做的额外工作。这包括,在客户端:

  1. 通过请求处理 CORS(对于 Web 客户端)
  2. 发送经过身份验证的用户的 token
  3. 发送设备实例id
  4. 序列化您传递给客户端的输入对象
  5. 反序列化客户端中的响应对象

在函数的后端:

  1. 验证用户 token 并从中提供用户对象
  2. 反序列化函数中的输入对象
  3. 序列化函数中的响应对象

这一切都在文档中说明。如果您可以自己完成所有这些工作,那么就不要使用可调用对象。如果您希望自动完成这项工作,那么可调用对象会很有帮助。

如果您需要直接控制 HTTP 协议(protocol)的细节(方法、 header 、内容主体),则不要使用可调用对象,因为它会隐藏所有这些细节。

使用可调用对象没有安全优势。没有速度改进。

关于http - Callable Cloud Functions 是否优于 HTTP 函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49475667/

相关文章:

jquery - 使用 jQuery 将内容从 HTTP 页面加载到 HTTPS 页面

http - cookie 和桌面应用程序

javascript - Web推送FCM,通知中的标签

firebase - React Native Google Signin idToken null

html - https 页面上的哪些 URL 需要是 https?

java - 使用 https 时选择的服务定义无效

django - 在 Django 中强制使用 https

html - 什么是多部分 HTTP POST 以及如何制作它? (抄写)

http - 使用 Selenium 检查 HTTP 响应 header 的最佳方法

ios - 无法将 iOS CriticalAlert 发送到 Firebase Cloud Messaging