Android 可以从应用程序外部访问firebase数据库吗
我需要实现一种可能性,在我的Android应用程序中的某段时间内尝试完整版本。为此,我需要将试用期的结束日期保存在某个地方 我认为使用firebase可以保存一些设备id和试用期的结束日期 你能告诉我,firebase数据库是否可以在移动应用程序之外访问?例如,我可以使用postman发送http请求来更新试用结束日期吗Android 可以从应用程序外部访问firebase数据库吗,android,firebase,firebase-realtime-database,Android,Firebase,Firebase Realtime Database,我需要实现一种可能性,在我的Android应用程序中的某段时间内尝试完整版本。为此,我需要将试用期的结束日期保存在某个地方 我认为使用firebase可以保存一些设备id和试用期的结束日期 你能告诉我,firebase数据库是否可以在移动应用程序之外访问?例如,我可以使用postman发送http请求来更新试用结束日期吗 我的应用程序没有任何用户身份验证 是的,firebase数据库可以通过其他sdk(如javascript)在应用程序外部访问。 但是您必须设置规则,以便在不进行身份验证的情况下
我的应用程序没有任何用户身份验证 是的,firebase数据库可以通过其他sdk(如javascript)在应用程序外部访问。 但是您必须设置规则,以便在不进行身份验证的情况下读取。 此外,如果要控制谁可以写入数据库,则需要在firebase中进行一些身份验证,以便应用写入规则
如果您不想添加任何类型的身份验证,那么您将向任何人公开您的数据库。是的,firebase数据库可以通过其他sdk(如javascript)在应用程序外部访问。 但是您必须设置规则,以便在不进行身份验证的情况下读取。 此外,如果要控制谁可以写入数据库,则需要在firebase中进行一些身份验证,以便应用写入规则
如果您不想添加任何类型的身份验证,那么您将向任何人公开您的数据库进行写入。是的,您可以使用云函数通过HTTPS调用Firebase后端,请参阅 在这个云功能中,您可以更新实时数据库的一个或多个特定节点 在这段官方视频中,您将看到一个关于如何通过HTTP云函数读取数据库的好例子: 您可以调整它,通过GET调用它,并将时间戳作为查询字符串参数传递,然后在函数中使用此时间戳写入数据库。比如:
exports.updateTrialPeriodDate = functions.https.onRequest((req, res) => {
const timestamp = req.query.ts;
consta trialPeriodDate = new Date(timestamp);
periodDate = {trialPeriodDate: trialPeriodDate};
admin.database().ref('/....').update(periodDate) // <- set the correct path where you want to write
.then(() => {
res.status(200).send("success");
})
.catch(error => {
console.log(error);
res.status(500).send(err);
});
});
然后按如下方式调用此函数:
https://us-central1-<your-project-id>.cloudfunctions.net/updateTrialPeriodDate?ts=1528718473
是的,您可以使用云函数通过HTTPS调用Firebase后端,请参阅 在这个云功能中,您可以更新实时数据库的一个或多个特定节点 在这段官方视频中,您将看到一个关于如何通过HTTP云函数读取数据库的好例子: 您可以调整它,通过GET调用它,并将时间戳作为查询字符串参数传递,然后在函数中使用此时间戳写入数据库。比如:
exports.updateTrialPeriodDate = functions.https.onRequest((req, res) => {
const timestamp = req.query.ts;
consta trialPeriodDate = new Date(timestamp);
periodDate = {trialPeriodDate: trialPeriodDate};
admin.database().ref('/....').update(periodDate) // <- set the correct path where you want to write
.then(() => {
res.status(200).send("success");
})
.catch(error => {
console.log(error);
res.status(500).send(err);
});
});
然后按如下方式调用此函数:
https://us-central1-<your-project-id>.cloudfunctions.net/updateTrialPeriodDate?ts=1528718473
好的,但如果我设置只有登录的用户才能写。有人可以在应用程序之外登录吗?好的,但如果我设置为只有已登录的用户才能写入。有人可以在应用程序之外登录吗?