Ajax/Firebase работает только на локальном хосте (политика одного и того же происхождения?)

StackOverflow https://stackoverflow.com//questions/11674131

Вопрос

У меня есть приложение Firebase, которое отлично работает на локальном хосте, но не работает, когда я подключаюсь к нему извне (путем разрешения переадресации портов на моем маршрутизаторе) или когда я загружаю его в Bluehost.

Этот код работает:

$(document).ready(function() {
    $("#button").click(function() {
        alert('Working!');
    });
});

но это не так:

var firebaseRef = new Firebase('[my firebase url]');

$(document).ready(function() {
    $("#button").click(function() {
        alert('Working!');
    });
});

Проведя некоторые исследования, я считаю, что проблема заключается в Та же политика происхождения, поскольку включение Firebase JS

http://static.firebase.com/demo/firebase.js

но моя ссылка на Firebase включена

http://gamma.firebase.com/

Я нашел несколько способов обойти это, но хочу знать, как лучше всего справиться с этим с помощью Firebase (или если здесь вообще проблема в одной и той же политике происхождения).

Это было полезно?

Решение

Я нашел ответ - просто глупая ошибка с моей стороны.

Просматривая руководства по Firebase, я заметил свою ошибку.я включал в себя http://static.firebase.com/demo/firebase.js файл, хотя в учебнике четко сказано включить http://static.firebase.com/v0/firebase.js файл.

Мне до сих пор интересно, почему demo файл работал только на локальном хосте...

Другие советы

Firebase использует CORS для восстановленных API и WebSockets для клиентов JS,

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top