昨天我们用的是httpclient发起网络请求,今天我们使用axios
Axios[1] ,是一个基于 promise 的网络请求库,可以运行 node.js 和浏览器中。
ohpm install @ohos/axios
ohos.permission.INTERNET
axios支持泛型参数,由于ArkTS不再支持any类型,需指定参数的具体类型。 如:axios.get<T = any, R = AxiosResponse, D = any>(url)
import axios, { AxiosError, AxiosResponse } from '@ohos/axios';
@Entry
@Component
struct SecondPage {
@State message: string = 'Hello World';
aboutToAppear(): void {
this.getDate()
}
getDate() {
axios<string, AxiosResponse<string>, null>({
method: "get",
url: '你的url'
}).then((res: AxiosResponse) => {
this.message=JSON.stringify(res.data)
console.info('result:' + JSON.stringify(res.data));
}).catch((error: AxiosError) => {
console.error(error.message);
})
}
build() {
RelativeContainer() {
Text(this.message)
.id('HelloWorld')
.fontSize(50)
.fontWeight(FontWeight.Bold)
.alignRules({
center: { anchor: '__container__', align: VerticalAlign.Center },
middle: { anchor: '__container__', align: HorizontalAlign.Center }
})
}
.height('100%')
.width('100%')
}
}
参考资料
[1]
Axios: https://gitee.com/link?target=https%3A%2F%2Fgithub.com%2Faxios%2Faxios