有没有理由不使用JSONP?

Che*_*hev 1 c# rest jquery json jsonp

我正在开发一个REST客户端,它将与名为attask的项目管理服务进行通信.

他们的REST API很方便,因为它返回了易于在我的代码中使用的简单JSON.因此我决定用jQuery构建接口.我很快发现由于同源策略,我不能将我的站点中的AJAX用于Attask API .

我的第一个想法是使用RESTSharp开发服务器端休息客户端,它将充当我的javascript和Attask API之间的桥梁.

在我开始使用该实现之前,我发现了JSONP.这对我来说是新的.事实证明,Attask API支持JSONP.jQuery原生支持JSONP所以我突然回到制作一个完整的jQuery接口而不需要服务器端干预.

我的问题是,有没有理由不使用JSONP?为了更进一步,构建服务器端REST客户端和使用真正的AJAX调用会有什么好处吗?

Str*_*ior 6

请记住,JSONP正是您所需要的:同源策略的解决方法.这将导致同源策略旨在避免的所有安全问题.好处是您可以选择您信任的特定域.缺点是,如果该域名决定违反您的信任,他们现在可以在您的网页上运行任意javascript代码,允许他们将他们想要的任何信息发送到他们自己的服务器.

如果你相信他们,那就去吧.如果不这样做,请设置自己的服务器端代理.