【发布时间】:2019-09-18 17:12:23
【问题描述】:
我在Android App上调用了一个Cloud Function,返回值为null,onRequest时可以正常工作em> 用于代替浏览器中的 onCall,但是当使用 OnCall 从 Android 应用程序调用该函数时,它返回 null
代码:
export const userExistsOrNot = functions.https.onCall((data, context) => {
const driver = neo4j.v1.driver("uri", neo4j.v1.auth.basic("usr", "pwd"), {connectionTimeout: 30 * 1000})
const session = driver.session()
session.readTransaction(wrte=>{
let r : any
if(context.auth){
r = wrte.run('MATCH (a:Person) WHERE a.userid ={userid} RETURN exists(a.userid)',
{userid: context.auth.uid})
}
return r as neo4j.v1.Result
}
)
.then(result => {
session.close();
driver.close();
if(result.records[0] == null){
return {
"data": {
"text": 0
}
}
} else {
return {
"data": {
"text": 1
}
}
}
})
.catch(error => {
session.close();
console.log(error);
driver.close()
throw new functions.https.HttpsError(error,"some error");
});
});
【问题讨论】:
标签: typescript firebase google-cloud-functions