2013-04-12 54 views
5

Chúng tôi gặp sự cố với Facebook jsssdk theo cách tải khung nội tuyến. Ứng dụng của chúng tôi được tích hợp sẵn với ứng dụng iOS (ngoài việc được phân phát trên http dưới dạng trang web mobiel).Facebook: Các sự cố do // iframe src không có sơ đồ cho các nút như

Trong "Chế độ iOS", nguồn gốc của ứng dụng của bạn là file:///[...]/index.html. Kiểu url của lược đồ Facebook ít phá vỡ đối với chúng tôi, bởi vì //connect.facebook.net/en_US/all.js chuyển thành file:///connect.... Do đó, chúng tôi cập nhật đoạn mã của chúng tôi để:

(function(d, s, id, debug){ 
    var js, fjs = d.getElementsByTagName(s)[0]; 
    if (d.getElementById(id)) {return;} 
    js = d.createElement(s); js.id = id; 
    js.src = "//connect.facebook.net/" + bp.lib.Facebook.getCurrentLocale() + "/all" + (debug ? "/debug" : "") + ".js"; 
    fjs.parentNode.insertBefore(js, fjs); 
}(document, 'script', 'facebook-jssdk', /*debug*/ false)); 

Tuy nhiên, facebook sdk sẽ tạo iframe cho các cá nhân như các nút. Chúng cũng có một số <iframe src="//..." > và ngắt. Tôi đã không tìm thấy một cách để thực thi sdk để sử dụng các lược đồ url.

Có ai có ý tưởng không? Cảm ơn

+1

Là "sửa lỗi nhanh", bạn có thể tự tạo mã iframe ... (nếu bạn không cần nghe các sự kiện edge.create). – CBroe

+0

+1, chỉ cần sử dụng phiên bản iframe của chính plugin? – Igy

+0

Chúng tôi không cần nghe bất kỳ sự kiện nào. Tuy nhiên, tôi muốn sử dụng anyways SDK hơn, bởi vì nó sẽ dễ dàng tích hợp hơn khi chúng tôi tự động thêm các nút như vậy vào chế độ xem. Tôi muốn đề nghị bạn xây dựng này như là câu trả lời của bạn, và nếu không có cách nào để thiết lập lược đồ URL để sử dụng với JS SDK, tôi sẽ chấp nhận nó. –

Trả lời

0

Bạn chỉ có thể sử dụng https:// trong tất cả mã iframe và các tệp khác mà bạn đưa vào trang web của mình. Sau đó, nó sẽ vẫn hoạt động chính xác qua kết nối http thông thường và với các kết nối https. Đó là cách tốt nhất để ngăn chặn các vấn đề như thế này.