vue 跨域XMLHttpRequest

vue 跨域 使用XMLHttpRequest 亲测好使

javascript 复制代码
 let url='http://127.0.0.1:9000/pssnotifyyb?b=1'
            //url='https://api.j4u.ink/v1/store/other/proxy/remote/moyu.json'
            var xhr=new XMLHttpRequest()
            xhr.open('GET',url,true)//第三个参数是是否异步请求,默认true            
            xhr.onreadystatechange=function(){
                if(xhr.readyState===XMLHttpRequest.DONE && xhr.status===200){
                    console.log('请求成功',JSON.parse(xhr.responseText));
                }
            }.bind(this)
            xhr.send('ss')

XMLHttpRequest 是怎么回事

XMLHttpRequest(XHR)底层是基于HTTP协议实现的。 XMLHttpRequest对象有一个readyState属性,表示XMLHttpRequest对象的状态。

  • 当readyState为0时,XMLHttpRequest对象已经创建,但还未初始化。
  • 当readyState为1时,XMLHttpRequest对象已经调用open()方法,但还未发送请求。
  • 当readyState为2时,XMLHttpRequest对象已经发送请求,但还未接收到响应。
  • 当readyState为3时,XMLHttpRequest对象已经接收到部分响应数据。
  • 当readyState为4时,XMLHttpRequest对象已经接收到全部响应数据并解析完毕。

XMLHttpRequest对象还有一个status属性,表示HTTP响应状态码。常见的HTTP状态码有200表示请求成功,404表示请求的资源未找到,500表示服务器端内部错误等。

当XMLHttpRequest对象接收到HTTP响应时,客户端脚本会根据响应头中的Content-Type字段来判断响应内容的类型。

  • 如果Content-Type为text/xml,客户端脚本可以使用responseXML属性来获取XML格式的响应数据。
  • 如果Content-Type为text/plain或application/json,客户端脚本可以使用responseText属性来获取纯文本格式的响应数据,然后解析成JSON对象。
相关推荐
SmartBoyW37 分钟前
深入ECMAScript规范:彻底搞懂JS隐式类型转换与底层ToPrimitive机制
前端·javascript
咪库咪库咪1 小时前
vue3-组件
vue.js
用户852495071841 小时前
解密 JavaScript 中的 this:谁才是真正的调用者?
javascript·面试
10share1 小时前
100行代码 模拟实现Vue 响应式系统
前端·vue.js
Heo1 小时前
Vite进阶用法详解
前端·javascript·面试
铁皮饭盒3 小时前
Next.js 风格路由内置?Bun FileSystemRouter 凭啥这么香
javascript
小林ixn4 小时前
别再背八股了!从 5 个真实场景彻底搞懂 JavaScript 的 this
javascript
东风破_4 小时前
JavaScript 面试常考的字符串算法:从反转字符串到回文判断
前端·javascript
巴勒个啦4 小时前
D3.js 入门实战:用力导向图可视化项目依赖关系
javascript
用户4099322502124 小时前
Vue状态管理入门第四章:组合式store和SSR风险
前端·vue.js·后端