Firebase 云功能响应代码=-1001 始终"The request timed out."



我正在开发一个安卓和iOS的应用程序,版本为Web中的Firebase cloud function 6.5.0和iOS中的2.5.1版本,android端运行良好,但在swift中我收到了Code=-1001"请求超时。 每次调用函数时。

我已经尝试了调用函数的所有方法,例如使用"functions.httpsCallable","alamofire"或"URLRequest"调用,但每次我收到Code=-1001"请求超时"错误时,函数日志中都没有打印任何内容。我尝试过邮递员,它正在工作。我认为我的代码、配置或 sdk 版本有问题。

请帮我解决这个问题。

这是我的简单测试 api 函数:

exports.testApi = functions.region('europe-west1').https.onCall((data, context) => {
    const message = data.message;
    return {
        message : message
    }
});

这些是我的快速代码:

let data = ["message": "test"]
G.functions.httpsCallable("testApi").call(data) { (result, error) in
    if let error = error as NSError? {
         if error.domain == FunctionsErrorDomain {
              let code = FunctionsErrorCode(rawValue: error.code)
              let message = error.localizedDescription
              let details = error.userInfo[FunctionsErrorDetailsKey]
              print("(code!) (message) (String(describing: details))")
         }
    }
    if result?.data != nil {
        print("result (result!.data)")
    }
}        

这是我的G类:

class G{
static var functions = Functions.functions(region: "europe-west1")
.
.
.

这是我的日志

2019-07-24 23:42:07.781273+0430 AppName[3188:858764] Task <234AF689-0252-4BEC-87E1-CF376AD50E17>.<1> finished with error - code: -1001
2019-07-24 23:42:07.785188+0430 AppName[3188:858780] Task <234AF689-0252-4BEC-87E1-CF376AD50E17>.<1> load failed with error Error Domain=NSURLErrorDomain Code=-1001 "The request timed out." UserInfo={_kCFStreamErrorCodeKey=-2102, NSUnderlyingError=0x283d489f0 {Error Domain=kCFErrorDomainCFNetwork Code=-1001 "(null)" UserInfo={_kCFStreamErrorCodeKey=-2102, _kCFStreamErrorDomainKey=4}}, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <234AF689-0252-4BEC-87E1-CF376AD50E17>.<1>, _NSURLErrorRelatedURLSessionTaskErrorKey=(
    "LocalDataTask <234AF689-0252-4BEC-87E1-CF376AD50E17>.<1>"
), NSLocalizedDescription=The request timed out., NSErrorFailingURLStringKey=https://europe-west1-AppName.cloudfunctions.net/testApi, NSErrorFailingURLKey=https://europe-west1-AppName.cloudfunctions.net/testApi, _kCFStreamErrorDomainKey=4} [-1001]
2019-07-24 23:42:07.794172+0430 AppName[3188:858764] Task <234AF689-0252-4BEC-87E1-CF376AD50E17>.<1> HTTP load failed (error code: -999 [1:89])
FIRFunctionsErrorCode DEADLINE EXCEEDED nil

经过很长时间的尝试,我发现了这个问题。我使用 VPN 连接到 firebase,但不知何故,即使在 Web 控制台中,L2TP VPN 也无法连接到 firebase,所以我将我的 VPN 更改为 IKEv2,问题得到了解决。

相关内容

最新更新