介绍
Axios ,是一个基于 promise 的网络请求库,可以运行 node.js 和浏览器中。本库基于Axios 原库v1.3.4版本进行适配,使其可以运行在 OpenHarmony,并沿用其现有用法和特性。
安装
ohpm install @ohos/axios
申请网络权限
ohos.permission.INTERNET
导包
import axiosfrom '@ohos/axios'
编写配置代码
设置基地在以及拦截器
import axios, { InternalAxiosRequestConfig, AxiosError, AxiosResponse } from '@ohos/axios'
// 实例化 通用配置
const httpInstance = axios.create({
baseURL: 'https://www.baidu.com',
timeout: 5000
})
// 拦截器配置
// 请求拦截器
// token配置等
httpInstance.interceptors.request.use((config: InternalAxiosRequestConfig) => {
return config
}, (error: AxiosError) => {
return Promise.reject(error)
})
// 添加响应拦截器
// 错误统一处理等
httpInstance.interceptors.response.use((response: AxiosResponse) => {
return response
}, (error: AxiosError) => {
return Promise.reject(error)
})
export { httpInstance }
使用
Log.info(JSON.stringify({ "code": 0, "message": "打印一个json字符串", "data": "" }))
const axios= await httpInstance.get<null,AxiosResponse<string,null>,null>('')
Log.info(JSON.stringify(axios.data),'百度响应')