簡體   English   中英

加載openSocial小工具時訪問被拒絕

[英]Access denied while loading an openSocial Gadget

我有三台服務器:

服務器A:主應用程序主機

服務器B:另一個應用程序的主機,該應用程序在主應用程序中作為openScoial小工具打開

服務器C:服務器B上應用程序的OpenSocial規范文件的主機

現在,我訪問服務器A上的應用程序,但出現錯誤,提示某些JavaScript文件功能拒絕了訪問。

似乎有些跨域問題,歡迎任何幫助。

您是否正在使用小工具進行任何身份驗證? 為什么xml與應用程序在不同的服務器上? 它們也在不同的域上嗎? 您使用什么方法來加載javascript? 您正在使用哪個OpenSocial容器實現? 您使用的是鎖定域嗎? 你試過什么了?

我可以給您一些一般性的建議/信息,但是至少不回答上述問題,我就無法確切地了解您的問題所在。

OpenSocial小工具呈現在iframe中,並且它們的域是由呈現它們的OpenSocial容器選擇的,幾乎從來沒有(我不知道有這種情況)在gadget xml的域中呈現它們。 通常,除非啟用了鎖定域,否則此域通常只是父頁面/ OpenSocial容器的域,在這種情況下,小工具將呈現在單獨的唯一域上,以防止它從父頁面訪問任何內容。

跨域策略會阻止xhr請求,這就是為什么您需要使用gadgets.io.makeRequest來執行通常使用xhr進行的操作的原因,但是makeRequest需要某種身份驗證(通常為oauth),因為這基本上涉及OpenSocial容器從小工具的服務器(在您的示例中為服務器C和B)。 仍然可以使用不受跨源策略影響的JSONP加載javascript /數據。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM