我已经部署了一个Firebase云函数(http函数),可以使用邮递员工具成功访问它,但是当我尝试从我的android应用程序通过客户端sdk访问时,总是会出现权限被拒绝的错误:
W / System.err:com.google.firebase.functions.FirebaseFunctionsException:PERMISSION_DENIED 04-19 15:18:00.258 3118-3118 / com.abc.xyz W / System.err:at com.google.firebase.functions.FirebaseFunctions $ 2.onResponse(com.google.firebase:firebase-functions @@ 16.3。 0:273) 在okhttp3.RealCall $ AsyncCall.execute(RealCall.java:206) 在okhttp3.internal.NamedRunnable.run(NamedRunnable.java:32) 在java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112) 在java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:587) 在java.lang.Thread.run(Thread.java:818)
这是我用来访问该功能的代码
private fun saveInstallationId(key: String, userId : String, installationKey : String) : Task<String> {
val data = hashMapOf(
"key" to key,
"installationId" to installationKey,
"userId" to userId
)
return functions
.getHttpsCallable("setInstallationId")
.call(data)
.continueWith { task ->
val result = task.result?.data as String
result
}
我认为我缺少一些标头,是否可以使用客户端SDK设置标头参数?