我在firebase中有一个数据库,我希望像https://publicdata-transit.firebaseio.com/sf-muni一样公开它 我在这里看到他们有一个前缀“pulicdata”,我怎么得到它?
答案 0 :(得分:1)
这不会做任何格式化(如果你愿意,你可以把它做得很漂亮),但这会拍摄你的快照,只要你将你的设置读为真,就把它放在屏幕上供所有人查看
<html>
<head>
<script src='https://cdn.firebase.com/js/client/2.2.1/firebase.js'></script>
<script src='https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js'></script>
</head>
<body>
<div id='displaySnapshotDiv'></div>
<script>
var myDataRef = new Firebase('https://MY-FIREBASE-NAME-GOES-HERE.firebaseio.com/');
myDataRef.on('value', function(snapshot) {
displaySnapshot(snapshot.val());
});
function displaySnapshot(snapshot) {
$('<div/>').text(JSON.stringify(snapshot)).appendTo($('#displaySnapshotDiv'));
$('#displaySnapshotDiv')[0].scrollTop = $('#displaySnapshotDiv')[0].scrollHeight;
};
</script>
</body>
</html>
如果您希望它更具可读性,可以执行以下操作:
<!-- language: lang-html -->
<html>
<head>
<script src='https://cdn.firebase.com/js/client/2.2.1/firebase.js'></script>
<script src='https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js'></script>
</head>
<body>
<div id='displaySnapshotDiv'></div>
<script>
var myDataRef = new Firebase('https://MY-FIREBASE-NAME-GOES-HERE.firebaseio.com/');
myDataRef.on('child_added', function(snapshot) {
displaySnapshotNeatly(snapshot.val());
});
function displaySnapshotNeatly(snapshot) {
$('<div/>').text(JSON.stringify(snapshot)).appendTo($('#displaySnapshotDiv'));
};
</script>
</body>
</html>
这是第二个在JSFiddle中工作的人:https://jsfiddle.net/lukeschlangen/rzfn45pz/
这是第二个包含firebase数据的内容(请告诉我写入的安全设置是否设置为非真实?):https://jsfiddle.net/lukeschlangen/rzfn45pz/2/
您似乎可能想要进行一些格式化,但这会显示所有数据。
答案 1 :(得分:1)
一个可公开访问的只读信息中心,就像您所指的那样,仅适用于Firebase自己管理的应用。您无法在自己的应用程序上启用它。
答案 2 :(得分:0)
如果您将数据库规则更改为true或使用身份验证令牌进行身份验证,则可以公开获取数据。但是,由于您不想对访问进行身份验证,因此您只需要进行公开访问规则
了解更多信息,请查看:https://firebase.google.com/docs/reference/rest/database/ enter image description here