在鸿蒙ArkTs 中进行 HTTP 请求封装可以通过使用 http 模块来实现。以下是一个简单的示例,演示如何在鸿蒙ArkTs 中封装 HTTP 请求:
import { HttpMethod, Request, Response, sendRequest } from '@ohos-tool/http';
export async function httpRequest(url: string, method: HttpMethod, data?: any): Promise<any> {
const request: Request = {
url: url,
method: method,
data: data ? JSON.stringify(data) : undefined,
header: {
'Content-Type': 'application/json'
}
};
try {
const response: Response = await sendRequest(request);
if (response.statusCode === 200) {
return JSON.parse(response.data);
} else {
console.error(`HTTP request failed with status code: ${response.statusCode}`);
return null;
}
} catch (error) {
console.error(`An error occurred during the HTTP request: ${error}`);
return null;
}
}
在这个示例中,我们定义了一个 httpRequest 函数,接收 URL、HTTP 方法和可选的数据作为参数。函数会将请求发送到指定的 URL,并返回响应数据(如果请求成功的话)。
import { HttpMethod } from '@ohos-tool/http';
import { httpRequest } from './HttpUtil';
async function fetchData() {
const url = 'https://jsonplaceholder.typicode.com/posts/1';
const method = HttpMethod.GET;
const response = await httpRequest(url, method);
if (response) {
console.log(response);
} else {
console.log('Failed to fetch data');
}
}
fetchData();
在这个示例中,我们导入了 httpRequest 函数并使用它来发送一个 GET 请求,然后打印响应数据或错误消息。
请确保在项目中添加对应的依赖库,以及在 config.json 中配置 TypeScript 编译选项,确保项目能够正确编译并运行。这只是一个简单的示例,你可以根据实际需求对 HTTP 请求封装进行更复杂的处理。