uni-APP 增加patch 方法

1,487 阅读1分钟

uni-APP 没有patch请求方法,只能借助axios (我们公司后端给的接口文档是让用patch方法,然后跨域那里的请求方式限制只能get、post, 于是我用这个axios封装的patch怎么也成功不了,检查自己代码没有问题,我简直是要---------最后我们商议 只用get和post) 这个代码先用不到, 我先记录一下 先在项目安装 axios

npm install axios

封装请求代码

import axios from 'axios';
//真机获取
axios.defaults.adapter = function (config) {
    return new Promise((resolve, reject) => {
        console.log(config)
        var settle = require('axios/lib/core/settle');
        var buildURL = require('axios/lib/helpers/buildURL');
        uni.request({
            method: config.method.toUpperCase(),
            url: buildURL(config.url, config.params, config.paramsSerializer),
            header: config.headers,
            data: config.data,
            dataType: config.dataType,
            responseType: config.responseType,
            sslVerify: config.sslVerify,
            complete:function complete(response){
                response = {
                  data: response.data,
                  status: response.statusCode,
                  errMsg: response.errMsg,
                  header: response.header,
                  config: config
                };

            settle(resolve, reject, response);
            }
        })
    })
}

export default {
axiosPatch(options) {
    let config = {
	headers: {
		'X-Access-Token': token,
		'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8',
			}
		}

		

		return new Promise((options.url, reject) => {

			axios.patch(url, options.data, config)
				.then(response => {
					this.checkToken(response);
					resolve(response);
				}, err => {
					reject(err)
				})
		})
	}
     }