TamperMonkey脚本跨域请求与JSONP
2018-01-10 11:12
393 查看
由于浏览器同源策略的原因,在网站A内无法向网站B发送请求,当然解决办法也有很多,一般需要服务器配合才行。
在油猴脚本中可以使用GM_xmlhttpRequest发送请求,它可以跨域访问。
另外,如果服务器支持JSONP输出,那么可以在onload中用eval执行回调
回调函数需要挂在window下面,而油猴脚本访问window则需要引入unsafeWindow
在油猴脚本中可以使用GM_xmlhttpRequest发送请求,它可以跨域访问。
// @grant GM_xmlhttpRequest
GM_xmlhttpRequest({ method: 'GET', url: `http://httpbin.org/get`, onload: response => { console.log(response); } });
另外,如果服务器支持JSONP输出,那么可以在onload中用eval执行回调
GM_xmlhttpRequest({ method: 'GET', url: 'http://www.xxx.com/api?callback=foo', onload: response => { if (response.status == 200) { eval(response.responseText); } } });
回调函数需要挂在window下面,而油猴脚本访问window则需要引入unsafeWindow
// @grant unsafeWindow
unsafeWindow.foo= () => { console.log('hello world'); };
相关文章推荐
- 油猴脚本实现跨域请求或下载文件 tampermonkey
- 跨域请求HTTP数据之JSONP
- Ajax中JSON实现异步请求,JSONP实现跨域异步请求的访问.........
- 跨域请求之jQuery的ajax jsonp的使用解惑
- JSON和JSONP有哪些区别,PhoneGap跨域请求如何实现
- jQuery jsonp跨域请求
- js 跨域请求,使用 jsonp
- jsonp其实很简单【ajax跨域请求】
- 使用JSONP实现跨域请求
- 跨域请求解决方法(JSONP, CORS)
- Ajax jsonp 跨域请求实例
- 借助cryptoJS , jsonp跨域,请求心知天气API ,获取天气信息
- Ajax+Spring MVC实现跨域请求(JSONP)
- AJAX 跨域请求 - JSONP获取JSON数据
- 使用Ajax、jsonp实现跨域请求调用心知天气API
- JSONP跨域交互请求JSON数据
- 同源策略和Jsonp跨域请求解析
- AJAX 跨域请求 - JSONP获取JSON数据
- 每日学一点-jsonp(ajax跨域请求)
- Ajax+Spring MVC实现跨域请求(JSONP)