يعمل 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 يستخدم لسنيا ل API ومريح و Websockets لعملاء JS، انظرهذه الإجابة ، لذلك ليست مشكلة.

يشبه مشكلة متعلقة بالتوجيه.هل تعاني من أخطاء في وحدة تحكم JavaScript؟"لا يعمل" مجردة بعض الشيء ويمكن أن يساعد خطأ أكثر دقة في الإجابة على السؤال الثانوي.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top