封装数据请求

一、新增js文件

const baseUrl = 'https://kkkk.cn';  //域名
const httpRequest = (opts, data) => {
    let httpDefaultOpts = {
        url: baseUrl+opts.url,

data: data,
        method: opts.method,
        header: opts.method == 'get' ? {
        'X-Requested-With': 'XMLHttpRequest',
        "Accept": "application/json",
        "Content-Type": "application/json; charset=UTF-8"
    } : {
        'X-Requested-With': 'XMLHttpRequest',
        'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8'
    },
        dataType: 'json',
    }
    let promise = new Promise(function(resolve, reject) {
        uni.request(httpDefaultOpts).then(
            (res) => {
                resolve(res[1])
            }
        ).catch(
            (response) => {
                reject(response)
            }
        )
    })
    return promise
};
//带Token请求
const httpTokenRequest = (opts, data) => {
	let token = "";
	uni.getStorage({
		key: 'token',
		success: function(ress) {
			token = ress.data
		}
	});
    //此token是登录成功后后台返回保存在storage中的
    let httpDefaultOpts = {
        url: baseUrl+opts.url,
        data: data,
        method: opts.method,
        header: opts.method == 'get' ? {
		 'Token': token,
        'X-Requested-With': 'XMLHttpRequest',
        "Accept": "application/json",
        "Content-Type": "application/json; charset=UTF-8",
		
    } : {
		 'Token': token,
        'X-Requested-With': 'XMLHttpRequest',
        'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8'
    },
        dataType: 'json',
    }
    let promise = new Promise(function(resolve, reject) {
        uni.request(httpDefaultOpts).then(
            (res) => {
                resolve(res[1])
            }
        ).catch(
            (response) => {
                reject(response)
            }
        )
    })
    return promise
};
 
export default {
	    baseUrl,
		httpRequest,
		httpTokenRequest,
}

二、在需要用到请求的页面调用

import http from '@/components/http.js'

三、在事件中引用

                     let opts={
			                        url: '/index/login',     
			                        method: 'post'         
			                    };

			                    let param={                       
				               phoneNumber: 18367898765,
				                 password: 111111
		           	};
			                    http.httpRequest(opts, param).then(res => {
			                        console.log(res.data);
			                       //打印请求返回的数据
			                        
			                    })
发布了17 篇原创文章 · 获赞 1 · 访问量 2733

猜你喜欢

转载自blog.csdn.net/qq_42014265/article/details/100512615