当前位置: 首页 > news >正文

行业门户网站建设方案书设计工作室简介怎么写

行业门户网站建设方案书,设计工作室简介怎么写,专门做it招聘的网站,网站建设常州麦策电商基于 xhr 实现 axios 上面我们讲到二次封装 axios ,但是现在我们尝试完全脱离 axios,自己实现一个 axios,由于 axios 底层是基于 xhr 做了二次封装,所以我们也可以尝试一下。 xhr 二次封装 src/plugins/xhr.js /*** 请求拦截器…

基于 xhr 实现 axios

上面我们讲到二次封装 axios ,但是现在我们尝试完全脱离 axios,自己实现一个 axios,由于 axios 底层是基于 xhr 做了二次封装,所以我们也可以尝试一下。

xhr 二次封装

src/plugins/xhr.js

/*** 请求拦截器队列* 响应拦截器队列*/
const request = []
const response = []/*** xhr 封装*/
function axios(config) {return new Promise((resolve) => {request.forEach((fn) => (config = fn(config)))const { method, url, data, headers } = config/*** 新建请求*/const xhr = new XMLHttpRequest()xhr.open(method, url)/*** 设置请求头*/for (const key in headers) {xhr.setRequestHeader(key, headers[key])}/*** 发送请求*/xhr.send(data)/*** 监听返回值*/xhr.onreadystatechange = () => {if (!(xhr.readyState === 4 && xhr.status === 200)) returnlet data = JSON.parse(xhr.responseText)response.forEach((fn) => (data = fn(data)))resolve(data)}})
}/*** 拦截器定义*/
axios.interceptors = {request: {use: (fn) => {request.push(fn)}},response: {use: (fn) => {response.push(fn)}}
}export default axios

axios 二次封装

src/plugins/axios.js

import axios from './xhr'
import qs from 'qs'/*** 请求拦截器*/
axios.interceptors.request.use((config) => {config.data = qs.stringify(config.data)return config
})/*** 响应拦截器*/
axios.interceptors.response.use((response) => {if (response.code !== 200) {alert('接口响应失败')}return response
})/*** 接口请求方法*/
const request = (method, option) => {return axios({method: method,url: 'https://study.noxussj.top' + option.url,data: option.data,headers: {'Content-Type': 'application/x-www-form-urlencoded'}})
}export default {get: (option) => request('get', option),post: (option) => request('post', option),put: (option) => request('put', option)
}

调用

import axios from './plugins/axios.js'/*** 发起请求*/
const p1 = axios.post({url: '/api/login',data: { account: 'test', password: '123456' }
})p1.then((res) => {console.log(res.data)
})

在这里插入图片描述

修改后预览效果,依然是可以正常请求接口。

在这里插入图片描述

原文链接:菜园前端

http://www.yayakq.cn/news/756580/

相关文章:

  • 网站建设 话术网站建设方案汇报
  • 眉山网站优化网站规划说明书范文
  • 网站做接口如何免费做网站
  • 百度智能云网站建设主做销售招聘的招聘网站有哪些
  • 丹东网站建设网络维护工作总结
  • 济南外贸网站建设公司排名网站数据模版
  • 做儿童方面的网站电子商务是干什么工作的
  • 在大学做网站网站主页效果图
  • 怎么自己编写网站潍坊网站建设方案书
  • 如何做动漫网站长春网站建设网站制作推广
  • 网站设计论文答辩问题及答案旅游网站html
  • 网站制作方案阿里域名注册查询
  • 织梦淘宝客网站黑龙江省关于城市建设政策网站
  • 陕西交通建设集团西镇分公司网站数字营销策划公司
  • 企业服务类网站汨罗网站建设
  • 杭州北京网站建设集客crm
  • 南翔做网站公司自己做自己的私人网站
  • 影视网站怎么做内链做直播网站开发教程
  • 网站开发设计师的工作有好点的网站建设公司吗
  • 招网站建设人员界面设计图片 作品
  • 厦门城乡建设厅网站dw网页制作教程2020
  • nh网站建设推广品牌平台
  • 建设一个购物网站多少钱青岛网站设计报价
  • 网址与网站的区别wordpress标签转换
  • 最新网站开发技术漫画网站建设教程
  • 生物做实验的网站哈尔滨公司网站
  • 淄博网站制作优化自创网站怎么赚钱
  • 芜湖市建设路小学网站cdn 加速 网站
  • 德清县新巿镇城市建设网站建设银行手机不用了怎么登陆网站
  • 贵州省城乡建设局网站查做网站需要空间跟域名吗