javascript - 从 iOS 应用程序调用该函数时,Firebase HTTP 云函数给出 401 错误

标签 javascript firebase google-cloud-functions

我已经编写了一些云函数并部署了它们。最初,我使用单个函数 onUpdate,并且运行良好。今天,我创建了一个简单的 onCall 函数,我愿意从 iOS Firebase SDK 调用该函数。这是我假设可以工作的测试函数,但它在响应中给出了未经身份验证错误。

exports.test = functions.https.onCall((data, context) => {
  console.log('test call info', data, context);
  return 'hello, world!';
});

当我检查 Firebase 上的日志时,它向我显示以下日志 -

enter image description here

有人可以帮我解决这个问题吗? 几个关键点 -

  • 我尚未启用 App Check。
  • 我可以从 iOS 应用和内部云函数 (onUpdate) 访问 Firebase 实时数据库和 Firestore 数据库,只是在使用 HTTP 可调用函数时遇到了这个问题。

这是我调用云函数的 iOS 应用程序代码 -

   let functions = Functions.functions()
   functions.httpsCallable("test").call() { res, error in
        if let error = error {
            debugPrint(error)
        } else {
            debugPrint(res?.data)
        }
   }

谢谢

最佳答案

关于 Protocol specification for https.onCall 的文档,我建议看一下Response format: status codes段落.

该问题似乎指向“如果请求中提供的身份验证 token 无效,则请求将被拒绝,返回 401 Unauthorized,错误代码为 UNAUTHENTICATED。”

您可能会找到这个question也很有趣。

关于javascript - 从 iOS 应用程序调用该函数时,Firebase HTTP 云函数给出 401 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69493003/

相关文章:

Android Firebase 身份验证 : federated Google login not working in Oreo

python - 将模块添加到谷歌云功能

node.js - NodeJs - Fluent-FFMPEG 找不到用于 firebase 云功能的 FFMPEG

javascript - 使用插件在 Netbeans 上扩展 TypeScript 中的内置对象

javascript - 将 DOM 元素添加到 onclick 函数

javascript - 无法在桌面上为远程 IP 文件创建快捷方式

typescript - Firebase Admin SDK错误: Expression has type `void` .将其作为语句放在自己的行中

javascript - jQuery - $(window).height() 和 width() 完全错误

swift - 我怎样才能获得所需的数据?

firebase - 我如何在 firebase 中找到 `SENDER ID` ?