我正在创建一个JavaScript小部件,它从我托管的WCF服务中获取大约4-6KB的数据,并使用canvas标签(HTML5)绘制一些图表。我希望任何人都可以通过复制粘贴我共享的一些HTML和JavaScript来将这个小部件嵌入到他们的网站中。
现在问题:同源策略,它不允许从窗口小部件的主机域到我的域上的WCF服务的任何XHR请求,这意味着使用该窗口小部件的任何人都无法从我的WCF服务获取数据(每个请求将响应4-6kb的数据。
我已经浏览了此网站上的上一个discussions,并找到了以下可能的解决方案:
首先,我想与你们确认,我对不同方法所做的简要分析是正确的,我不会错过任何人使用的任何重要解决方案,如果我的分析是正确的,我想讨论这些方法的利弊。
其次我知道Facebook,Twitter,Google都会分享他们的应用程序(完全按我想要的方式分享)并且为了这样做而克服了这个问题,任何人都能指出我能找到更多的方向关于他们如何解决这个问题。
答案 0 :(得分:0)
这是你需要根据
来判断的对于您描述的特定用例,我建议使用JSONP。它会使小部件非常小,是一个很好的跨浏览器解决方案,可以处理适度的数据要求。
Google等使用“彗星”类型的解决方案,其中像客户端和服务器之间的插件一样持久存储。这不应该用于小部件,因为它会占用浏览器资源。