我可以通过 REST 访问 firebase 实时数据库安全规则吗?
Can i access the firebase realtime database security rules via REST?
我正在寻找对我的安全规则进行模拟测试,目前文档建议将您的规则加载到一个文件中,然后将该文件读入模拟器。
const rules = fs.readFileSync("database.rules.json", "utf8");
我宁愿做的是从我的项目中加载最新的安全规则,这样我就知道我对它所做的任何更改都可以立即进行测试并且可以正常工作。
是否可以通过 REST 访问安全规则?
根据参考文档可以retrieve security rules via a REST GET call。从那里:
curl 'https://[PROJECT_ID].firebaseio/.settings/rules.json?auth=FIREBASE_SECRET'
curl -X PUT -d '{ "rules": { ".read": true } }' 'https://[PROJECT_ID].firebaseio/.settings/rules.json?auth=FIREBASE_SECRET'
我要指出:这并不是模拟器设计的真正工作方式。这个想法是,您应该在部署规则 之前 在本地测试它们,这样您就不会在生产中破坏您的应用程序。部署后,通过对您的实际数据库发出查询来测试您的规则更有意义。
就是说,如果这确实是您想要远程访问规则的方式,那么有一个 REST API,您可以免费使用任何 nodejs HTTP 库将它们加载到您的测试工具中。
我正在寻找对我的安全规则进行模拟测试,目前文档建议将您的规则加载到一个文件中,然后将该文件读入模拟器。
const rules = fs.readFileSync("database.rules.json", "utf8");
我宁愿做的是从我的项目中加载最新的安全规则,这样我就知道我对它所做的任何更改都可以立即进行测试并且可以正常工作。
是否可以通过 REST 访问安全规则?
根据参考文档可以retrieve security rules via a REST GET call。从那里:
curl 'https://[PROJECT_ID].firebaseio/.settings/rules.json?auth=FIREBASE_SECRET' curl -X PUT -d '{ "rules": { ".read": true } }' 'https://[PROJECT_ID].firebaseio/.settings/rules.json?auth=FIREBASE_SECRET'
我要指出:这并不是模拟器设计的真正工作方式。这个想法是,您应该在部署规则 之前 在本地测试它们,这样您就不会在生产中破坏您的应用程序。部署后,通过对您的实际数据库发出查询来测试您的规则更有意义。
就是说,如果这确实是您想要远程访问规则的方式,那么有一个 REST API,您可以免费使用任何 nodejs HTTP 库将它们加载到您的测试工具中。