| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101 |
- //utils/http.js
- class Request {
- constructor(options = {}) {
- // 请求的根路径
- this.baseUrl = options.baseUrl || 'http://10.168.1.100'
- // this.baseUrl = options.baseUrl || 'http://10.168.3.100'
- // this.baseUrl =options.baseUrl || 'http://192.168.137.100'
- // 请求的 url 地址
- this.url = options.url || ''
- // 请求方式
- this.method = 'GET'
- // 请求的参数对象
- this.data = null
- // header 请求头
- this.header = options.header || {}
- this.beforeRequest = null
- this.afterRequest = null
- }
-
- // 添加对header的支持
- _mergeHeaders(customHeader = {}) {
- return Object.assign({}, this.header, customHeader); // 合并默认header和自定义header
- }
-
- get(url, data = {},header = {}) {
- // console.log(header);
- this.method = 'GET'
- this.url = this.baseUrl + url
- this.data = data
- this.header = this._mergeHeaders(header) // 合并header
- return this._()
- }
-
- post(url, data = {},header = {}) {
- this.method = 'POST'
- this.url = this.baseUrl + url
- this.data = data
- this.header = this._mergeHeaders(header) // 合并header
- return this._()
- }
-
- put(url, data = {}) {
- this.method = 'PUT'
- this.url = this.baseUrl + url
- this.data = data
- return this._()
- }
-
- delete(url, data = {}) {
- this.method = 'DELETE'
- this.url = this.baseUrl + url
- this.data = data
- return this._()
- }
-
- _() {
- if(this.baseUrl==''){
-
- this.url ="http://10.168.1.100"+this.url
- // this.url ="http://192.168.137.100"+this.url
- }
-
- // 清空 header 对象
- // this.header = {}
- // 请求之前做一些事
- this.beforeRequest && typeof this.beforeRequest === 'function' && this.beforeRequest(this)
- // 发起请求
- return new Promise((resolve, reject) => {
- let weixin = wx
- // 适配 uniapp
- if ('undefined' !== typeof uni) {
- weixin = uni
- }
- weixin.request({
- url:this.url,
- method: this.method,
- data: this.data,
- header: this.header,
- success: (res) => {
-
- resolve(res)
- },
- fail: (err) => {
-
- reject(err)
- },
- complete: (res) => {
-
- // 请求完成以后做一些事情
- this.afterRequest && typeof this.afterRequest === 'function' && this.afterRequest(res)
- }
- })
- })
- }
- }
-
- export const $http = new Request()
-
-
-
-
|