如何使用JSONP和JQuery规避相同的源策略?

时间:2013-09-05 06:28:05

标签: jquery jsonp same-origin-policy

one.com提供的网页包含以下代码:

  $.post 'http://two.com/',
    data: 'example'
  , dataType: 'jsonp'

它出现以下控制台错误:

XMLHttpRequest cannot load http://two.com. Origin http://one.com is not allowed by Access-Control-Allow-Origin. 

1 个答案:

答案 0 :(得分:1)

JSONP就其本质而言是GET,而不是POST。它使用script标记作为其传输机制,并使用script标记GET其脚本。

$.get 'http://two.com/',
  data: 'example'
, dataType: 'jsonp'

另请注意,服务器必须支持JSONP才能正常工作,就像您要求支持(比如说)XML一样。它发回的格式特定于JSONP。