HarmonyOS鸿蒙Next中使用rcp,post请求如何带header字段

HarmonyOS鸿蒙Next中使用rcp,post请求如何带header字段 使用rcp, post请求如何带header字段

4 回复

cke_210.png

cke_467.png

这两种方式都是可以的

更多关于HarmonyOS鸿蒙Next中使用rcp,post请求如何带header字段的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


非常简单:

import { rcp } from '@kit.RemoteCommunicationKit';

let headers: rcp.RequestHeaders = {
  "accept": "application/json"
};

let content = "data to send";
let configuration: rcp.Configuration = {
  transfer: {
    timeout: { connectMs: 60000, transferMs: 60000 }
  }
};
let cookies: rcp.RequestCookies = { 'name1': 'value1', 'name2': 'value2' };
let transferRange: rcp.TransferRange = { from: 100, to: 200 };
let req = new rcp.Request("http://example.com", "POST", headers, content, cookies, transferRange, configuration);

详见开发文档:https://developer.huawei.com/consumer/cn/doc/harmonyos-references/remote-communication-rcp#constructor

在HarmonyOS NEXT中,使用rcp发送POST请求携带header字段,可通过RequestOptionsheader属性设置。示例:

import { rcp } from '@kit.RemoteCommunicationKit';
let request = new rcp.Request('https://example.com', rcp.HttpMethod.POST);
request.header = { 'Content-Type': 'application/json', 'Authorization': 'Bearer token' };
let response = await rcp.sendRequest(request);

直接赋值字典即可。

在 HarmonyOS Next 中,发起携带 Header 的 POST 请求通常使用 @ohos.net.http 模块。示例如下:

import http from '@ohos.net.http';

const httpRequest = http.createHttp();
httpRequest.request(
  'https://example.com/api',
  {
    method: http.RequestMethod.POST,
    header: {
      'Content-Type': 'application/json',
      'Authorization': 'Bearer your-token',
      'Custom-Header': 'value'
    },
    extraData: JSON.stringify({ key: 'value' }),
    expectDataType: http.HttpDataType.STRING
  }
).then((res) => {
  console.info('Response: ' + res.result);
}).catch((err) => {
  console.error('Error: ' + JSON.stringify(err));
});
  • header 字段用于添加自定义请求头。
  • extraData 为 POST 请求体,类型与 Content-Type 匹配。
  • 使用 expectDataType 指定返回数据类型。
回到顶部