當我嘗試使用IBM Social Business ToolKit for IBM Connections構建OpenSocial小工具時,我遇到Access-Control-Allow-Origin錯誤。在IBM Social Business ToolKit中禁用代理
我有3臺服務器參加這個小工具:
- 連接:的IBM Connections 4.0服務器將被託管的小工具
- IBMSBT:託管社交商務工具包腳本和應用
- 服務器JESSE_API:我的應用程序服務器託管該小工具將使用
小工具XML從JESSE_API由CONNECTIONS加載的API。小工具的視圖加載腳本並調用JESSE_API。我想使用Social Business Toolkit來訪問Connections的部分內容,因此小工具視圖也會從IBMSBT中加載這些組件。
我目前只是原型 - 這是我能夠使這個工作只使用連接4.0 API,但寧願使用SBT庫。
入門我只是下跌中的「獲取我的社區 - 主窗口」代碼插入我的小工具的觀點,幷包括以下腳本:
<script type="text/javascript">
var djConfig = {
parseOnLoad: true
};
</script>
<script src="//IBMSBT/sbt.dojo180/dojo/dojo.js"></script>
<script src="//IBMSBT/sbt.sample.web/library?ver=1.8.0"></script>
重新加載小工具給在控制檯以下錯誤:
XMLHttpRequest cannot load http://IBMSBT/sbt.sample.web/service/proxy/connections/http/CONNECTIONS/communities/service/atom/communities/my?ps=5
由於我的小工具在CONNECTIONS服務器上運行,因此我不需要代理。我沒有看到立即的方式禁用代理此端點所以我只是設置一個斷點在Endpoint.js線160之前在那裏執行以下代碼:
if(this.proxy) {
args.url = this.proxy.rewriteUrl(args.url,this.proxyPath);
}
當的斷點,我設置。 proxy = null,導致代理不被使用並且社區信息正確返回。
我的問題是我應該這樣做不同,或者應該添加一種方法來繞過使用代理給定我目前使用的結構?
謝謝,馬克。我接受了這個,並且更加關注了'/ library /'在做什麼,並且提出了一個我發佈的答案,作爲另一個答案。讓我知道你的想法 - 我想只是放入'/ library /'生成的代碼並不理想,但它目前運行良好。 –