jsonp跨域

关于跨域讨论的是比较多的,实现跨域的方式也有很多种,jsonp,cros,代理等等。关于跨域的诸多方式就不多说,主要说说一个很小众的问题,关于jsnop的。

先来回答一个小问题:实际工作中跨域请求用JSONP,CORS,Proxy那个使用频率更高?

首先是proxy最多、其次是cors、jsonp最后

通过nginx进行代理这个方法最好, 因为不管什么环境, 你只要请求/api/xxxx就可以了。

Proxy理论上是应该是最多的。 现在前端能搞定的, 中小型公司后端都不愿意写Proxy,因为他们根本没有对系统的整体规划,能省则省。

cors,也很方便, 第三方的话,CORS最多。但是需要后端进行配置, 而且每次打包的请求地址需要重新配。多数场景都是一个公司旗下不同系统之间相互开设白名单。对外是不太会用的。

JSONP最近几年基本没有遇到过这种场景了. 而且打包的时候也是需要配置的。配置就是, 开发/测试/预发/线上的不同地址, 需要做不同的配置。JSONP,主要用于公开的接口,私密性的一定不会这么干jsonp应该是快淘汰的产物了。

接下来讨论一下不同请求方式中使用jsonp。

1.jq中使用jsonp

接口以百度搜索提示词为例

https://sp0.baidu.com/5a1Fazu8AA54nxGko9WTAnF6hhy/su?wd=&cb=abc
function getVal() {
                $.ajax({
                    url: "https://sp0.baidu.com/5a1Fazu8AA54nxGko9WTAnF6hh
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值