鸿蒙 - arkTs:网络请求封装和使用
2023-12-25 19:40:51
1.?module.json5文件配置网络请求
{
"module": {
"requestPermissions": [
{
"name": "ohos.permission.INTERNET"
}
]
}
}
2. 在pages同级创建一个文件夹,起名为api
3. api文件夹下创建index.ts文件,文件内容:
import http from '@ohos.net.http';
// 接口参数格式校验
interface ReqObj {
url: string
params?: object | string | number
}
export default async function getHttpData(reqObj:ReqObj): Promise<any>{
let dataList: any = []
let httpRequest = http.createHttp();
let response = httpRequest.request(
"填写HTTP请求的URL地址",
{
// 接口请求method
method: http.RequestMethod.POST,
// 接口请求头
header: {
'Content-Type': 'application/json'
},
//使用POST请求时此字段用于传递内容
extraData: {
data: ''
},
// 可选,指定返回数据的类型
expectDataType: http.HttpDataType.STRING,
}
);
await response.then((data) => {
const code = data.responseCode
if (code == 200) {
const response = data.result + "";
const res = JSON.parse(response).data
dataList = res
}else if (code === 401){
// 登录状态失效
}
}).catch((err) => {
console.info('error:' + JSON.stringify(err));
})
return dataList;
}
4. 调用接口:
// 引入定义的接口
import getHttpData from '../api/index'
@Entry
@Component
struct Index {
async aboutToAppear() {
const list = await getHttpData('接口参数')
console.log(list)
}
build() {
Column() {
}
}
}
文章来源:https://blog.csdn.net/weixin_45536484/article/details/135201000
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!