OpenHarmony开发者论坛

标题: 在安卓中使用retrofit网络库,在OpenHarmony应用开发时有没有合适的三方库? [打印本页]

作者: 清风明月    时间: 2023-8-25 09:35
标题: 在安卓中使用retrofit网络库,在OpenHarmony应用开发时有没有合适的三方库?
[md]【问题描述】

我在安卓中使用retrofit网络库,使用了一些基本功能。1.retrofit支持可选参;2.支持通过注解将参数注入给请求的不同部分。 比如@GET就是get请求,@POST就是post请求,参数@HEADER自动将参数放入header,@FormUrilEncoded自动设置urlencoder等,如下图。感觉很方便,请问在OpenHarmony应用开发时有没有合适的三方库?

![AgAACLWCBLV5_PsmCJpACaBmZQAeezKk.png](data/attachment/forum/202308/25/093521az88qlmv18zazzsv.png "AgAACLWCBLV5_PsmCJpACaBmZQAeezKk.png")![]()

【运行环境】

硬件:rk3568;  ROM:  3.2 Beta5;  API 9
[/md]
作者: 努力写bug    时间: 2023-8-25 14:11
[md]你好,可以使用[axios](https://gitee.com/openharmony-sig/axios)三方库。对于你提到的两个问题,Axios同样支持:

1)axios就支持可选参数,甚至可以使用“=”设置参数默认值,接口调用更方便。

2)Get,Post,Header等为axios下参数,无论使用注解方式还是传参方式对于开发易用性是一样的。

axios使用示例:

![image16.png](data/attachment/forum/202308/29/162845o9snh9kke0gff83e.png "image (16).png")

代码:

```typescript
import {AxiosInstance } from '@ohos/axios' 
// 搜索  
export function search(  
        query: { keywords: string },  
        headersRawAxiosRequestHeaders & MethodsHeaders) | AxiosHeaders,  
        axiosInstance:AxiosInstance = AxiosRequest,  
        timeout?:number): Promise<ResponseResult<SearchSongModel>> {  
    return axiosInstance({  
        method: "get",  
        url: '/cloudsearch',  
        params: query,  
        headers:headers,  
        timeout:timeout,  
    })  
}   
search({keywords:''},{})
```
[/md]




欢迎光临 OpenHarmony开发者论坛 (https://forums.openharmony.cn/) Powered by Discuz! X3.5