我设置了一个Firestore Cloud Function来从我的Android应用程序中调用该应用程序,这是按预期方式调用的,但是我无法从该方法内部访问Firestore文档,并且无法在日志中接收到 TypeError 。
URL obj = new URL("https://www.example.com/product/pd/v1/gql/");
HttpURLConnection conn = (HttpURLConnection) obj.openConnection();
conn.setRequestMethod("POST");
conn.setRequestProperty("User-Agent", USER_AGENT);
conn.setDoOutput(true);
conn.setRequestProperty("Content-Type", "application/json");
conn.setRequestProperty("Cookie", "_bb_vid=djfhhf");
JSONObject val = new JSONObject(gqlValue2);
JSONObject jObj = new JSONObject();
jObj.put(gqlKey1, gqlValue1);
jObj.put(gqlKey2, val);
System.out.println(jObj);
OutputStreamWriter wr = new
OutputStreamWriter(conn.getOutputStream());
wr.write(jObj.toString());
wr.flush();
functions.firestore().document('qa/content/feeds/main/content/'+contentTitle)
functions.firestore().ref('qa/content/feeds/main/content/'+contentTitle)
答案 0 :(得分:2)
Firestore没有ref()方法。实时数据库可以。您可能会混淆两者。
使用Firestore,您可以处理集合和文档,并且有不同的方法来获取集合和文档引用。也许您打算这样使用doc()方法?
admin.firestore().doc('qa/content/feeds/main/content/'+contentTitle)
答案 1 :(得分:0)
对不起,答案错误。
初始化应用程序时,您需要通过凭据。
const admin = require('firebase-admin');
const functions = require('firebase-functions');
admin.initializeApp(functions.config().firebase);
var db = admin.firestore();
或
admin.initializeApp({
credential: admin.credential.cert({
projectId: '<PROJECT_ID>',
clientEmail: 'foo@<PROJECT_ID>.iam.gserviceaccount.com',
privateKey: '-----BEGIN PRIVATE KEY-----\n<KEY>\n-----END PRIVATE KEY-----\n'
}),
databaseURL: 'https://<DATABASE_NAME>.firebaseio.com'
});