2016-02-18 16 views
1

У меня есть база данных в firebase, и я хочу сделать ее общедоступной, как https://publicdata-transit.firebaseio.com/sf-muni Что я вижу здесь, у них есть префикс «pulicdata», как мне его получить?Как создать базу данных базы данных firebase

+0

Что вы ожидаете достичь с помощью «его обнародования» ? –

+0

Чтобы просмотреть его в браузере без аутентификации – Meir

+0

А, вы хотите, чтобы * приборная панель * была общедоступной? Это настройка, доступная только для приложений, управляемых Firebase. –

ответ

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/

А вот второй один с вашими данными о бомбе (скажите, что настройки безопасности для записи установлены на что-то иное, кроме правды?): https://jsfiddle.net/lukeschlangen/rzfn45pz/2/

Кажется, e вы можете сделать некоторое форматирование, но это отображает все данные.

+0

Это не поможет. Мне нужно увидеть строку на странице: https://publicdata-transit.firebaseio.com/sf-muni – Meir

+0

Тогда я думаю, что это уже работает? Если вы откроете его в окне инкогнито (как если бы вы не вошли в firebase и вы были обычным пользователем Интернета), он показывает данные прямо там? Вам нужно что-то еще? –

+0

Спасибо за ответы сегодня @LukeSchlangen. –

1

Публичная доступная панель только для чтения, такая как тот, о котором вы говорите, доступна только для приложений, управляемых самой Firebase. Вы не можете включить его в своих приложениях.

+0

Он говорит о базе данных, а не о панели. –

+0

OP ссылается на пример публичных данных, который раньше использовался для наших общедоступных читаемых баз данных (что вы можете сделать с правилами безопасности Firebase) и публичной информационной панелью (см. Второй комментарий к вопросу). Это параметр, который никогда не был доступен для созданных пользователем проектов. –

0

Данные могут быть доступны публично, если вы измените правила базы данных на true или используете токен аутентификации для аутентификации. Но так как вы не хотите аутентификации доступа, все, что вам просто нужно сделать, это сделать вам правила доступа, общественные

для получения дополнительной информации посетите: https://firebase.google.com/docs/reference/rest/database/ enter image description here