sd-von
v1.0.2
Published
```javascript /** * Author : roy * Date : 2017-07-18 17:00 * Describe : */
Downloads
2
Readme
注意!!!!!
MPVUE 小程序 目前只支持 直接拷贝代码。
因为 不会上传npm 搞不好环境 哪位兄弟姐妹帮忙搞一下 然后再分享下吧。
安装
snpm i @sd/von --save
请求封装
caller.js
/**
* Author : roy
* Date : 2017-07-18 17:00
* Describe :
*/
import Von from './von/von'
import * as appService from '../services/appService'
import accountService from '../services/accountService'
import api from './index'
import constants from '../constants'
import toast from '../utils/toast'
const DEFAULT_BASE_URL = constants.url.BASE_API
const von = new Von(Von.engine.mp)
von.defaults.baseUrl = DEFAULT_BASE_URL
von.defaults.method = 'POST'
von.logger.show = true
von.interceptor.request.use(async (call) => {
const request = call.request
let version = appService.getVersion()
let channelType = appService.getChannel()
request.params = {
version,
channelType,
...request.params
}
let uniqueId = appService.getUniqueId()
let platform = appService.getPlatform()
request.header = {
platform,
channelType,
uniqueId,
...request.header
}
})
von.interceptor.response.use(async (call) => {
let request = call.request
let response = call.response
if (request.ignoreResponseJson) {
return response.data
}
if (response.data.code !== 0) {
handleResponseAccount(call).catch(console.warn)
let msg = `code: ${response.data.code}, msg: ${response.data.msg}`
let error = new Error(msg)
error.apiMsg = response.data.msg
throw error
}
return response.data
}, error => {
toast.show(error.apiMsg || '服务器繁忙,请稍后重试')
throw error
})
export default von
import von from '../von'
export const checkOk1 = () => von.request('/lala/ok1')
export const checkOk1 = () => von.request('/lala/ok1', {params: {id: 123}})
export const checkOk1 = () => von.request('/lala/ok1', {params: {id: 123}, method: 'PUT'})
export const checkOk1 = () => von.request('/lala/ok1', {params: {id: 123}, method: 'PUT', header: {token: 'aksljdkl2daklsjd'}})
export const checkOk1 = () => von.request('/lala/ok1', {params: {id: 123}, method: 'PUT', header: {token: 'aksljdkl2daklsjd'}, baseUrl: 'http://vsona.net'})