CORS(跨源资源共享)和 JSONP 是两种常见的跨域请求技术。下面我们将比较这两种技术的异同。

CORS

CORS 是一种更现代、更安全的方法来实现跨域请求。它允许服务器指定哪些来源可以访问其资源。

CORS 的特点:

  • 支持所有类型的 HTTP 请求:GET、POST、PUT、DELETE 等。
  • 支持所有类型的响应头:如 Content-TypeX-Powered-By 等。
  • 更安全:需要服务器设置相应的响应头。

JSONP

JSONP 是一种较老的技术,通过 <script> 标签的 src 属性来实现跨域请求。

JSONP 的特点:

  • 只支持 GET 请求
  • 只支持响应头中的 Content-Type: text/javascript
  • 安全性较低:容易受到 XSS 攻击。

总结

  • CORS 更现代、更安全。
  • JSONP 更简单,但安全性较低。

CORS 与 JSONP

更多信息,请访问 CORS 教程