赞
踩
export default class CommonConstant { /** * The host address of the server. */ static readonly SERVER: string = '请求接口地址'; /** * The request success code. */ static readonly SUCCESS_CODE: number = 200; /** * Read timeout. */ static readonly READ_TIMEOUT: number = 50000; /** * Connect timeout. */ static readonly CONNECT_TIMEOUT: number = 50000; }
import http from '@ohos.net.http'; import CommonConstant from './common'; import Prompt from '@system.prompt'; const request = (url: string, data?: Object, header?: Object,) => { return new Promise((resolve, reject) => { // 请求头 let h if (header) { h = header } else { h = { 'Content-Type': 'application/json', } } // 每一个httpRequest对应一个HTTP请求任务,不可复用 let httpRequest = http.createHttp(); // 用于订阅HTTP响应头,此接口会比request请求先返回。可以根据业务需要订阅此消息 // 从API 8开始,使用on('headersReceive', Callback)替代on('headerReceive', AsyncCallback)。 8+ httpRequest.on('headersReceive', (header) => { // console.info('header: ' + JSON.stringify(header)); }); httpRequest.request( // 填写HTTP请求的URL地址,可以带参数也可以不带参数。URL地址需要开发者自定义。请求的参数可以在extraData中指定 CommonConstant.SERVER + url, { method: http.RequestMethod.POST, // 开发者根据自身业务需要添加header字段 header: h, // 当使用POST请求时此字段用于传递内容 extraData: data, expectDataType: http.HttpDataType.STRING, // 可选,指定返回数据的类型 usingCache: true, // 可选,默认为true priority: 1, // 可选,默认为1 connectTimeout: 60000, // 可选,默认为60000ms readTimeout: 60000, // 可选,默认为60000ms }, (err, res: any) => { if (!err) { // data.result为HTTP响应内容,可根据业务需要进行解析 console.info('Result:' + res.result); resolve(JSON.parse(res.result)) } else { console.info('error:' + JSON.stringify(err)); Prompt.showToast({ message: JSON.stringify(err) }) return JSON.stringify(err) // reject(JSON.stringify(err)) // 取消订阅HTTP响应头事件 httpRequest.off('headersReceive'); // 当该请求使用完毕时,调用destroy方法主动销毁。 httpRequest.destroy(); } }); }) } export default request
import request from "./request"
const loginApi = {
// 账号登录
async login(data: object) {
return await request('/account/login', data, {Token: false})
}
}
export default loginApi
import loginApi from "../../api/login"
loginApi.login({
account: this.account,
password: this.password
}).then((res: any) => {
if (res.code == 1) {
console.info(res.data)
}
})
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。