qingyiay
2023-04-21 fb4fa76b4c1a93c833cd97f97f41b6158ab1aef7
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
import { fetch } from '@/api/request.js'
 
const typeObj = {
    headerGET: { 'Content-type': 'application/x-www-from-urlencoded' },
    headerPOST: { 'Content-type': 'application/x-www-from-urlencoded' },
    jsonPOST: { 'Content-type': 'application/json' },
    utfPOSt: { 'content-type': 'application/x-www-form-urlencoded;charset=utf-8' }
}
 
// 通用接口请求
export const reqAll = (url, params, opt = {}) => {
    opt.data = params
    opt.header = typeObj['headerPOST']
    return fetch(url, opt)
}
export const reqAllJson = (url, params, opt = {}) => {
    opt.data = params
    opt.header = typeObj['jsonPOST']
    return fetch(url, opt)
}
// deltete请求
export const reqDelete = (url, params, opt = {}) => {
    opt.header = typeObj['jsonPOST']
    opt.method = 'DELETE'
    opt.data = params
    return fetch(url, opt)
}
// get请求
// urlParam是拼接路径的参数
export const reqGet = (url, params, opt = {}) => {
    opt.header = typeObj['headerGET']
    opt.method = 'GET'
    opt.data = params
    return fetch(url, opt)
}
 
// post请求
// urlType是指定拼接路径还是传json格式参数
export const reqPost = (url, params, urlType, opt = {}) => {
    opt.method = 'POST'
    if (urlType == 'params') {
        Object.keys(params).map(item => {
            // 这里面不能用params.item,点运算符加标识符的形式取值,因为item是Object.keys生成的每一项键都是字符串,不是标识符,可以用[]的形式访问
            if (params[item] == null) {
                params[item] = ''
            }
        })
        opt.params = params
        opt.header = typeObj['headerPOST']
    } else if (urlType == 'json') {
        opt.header = typeObj['jsonPOST']
        opt.data = params
    } else if (urlType == 'utf8') {
        opt.header = typeObj['utfPOSt']
        opt.data = params
    } else {
        opt.data = params
        opt.header = typeObj['headerPOST']
    }
    return fetch(url, opt, urlType)
}