HarmonyOS rcp各种带参数请求示例(get,post-json,post-form,delete,put)

rcp的各种带参数请求示例(get,post-json,post-form,delete,put) 各种方式怎么传参,以{username:‘dail’}为例,token怎么传参

HarmonyOS
2024-12-27 17:08:33
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
shlp

示例如下:

import rcp from '@hms.collaboration.rcp';
import Url from '@ohos.url'
import HashMap from '@ohos.util.HashMap';

//GET
let params = new HashMap<string, Object>();
params.set("username", "dail");

let mm = 'http://www.huawei.com';
let requestUrl = Url.URL.parseURL(mm);
const urlParams = new Url.URLParams(requestUrl.search.slice(1));
if (params) {
  params.forEach((value: object, key: string) => {
    urlParams.append(key, value.toString());
  });
}
let url = mm + '?' + urlParams.toString();

let headers : rcp.RequestHeaders = {
  "Authorization": "Bearer YOUR_ACCESS_TOKEN",
  "Content-Type": "application/json",
}

let req_get = new rcp.Request(url, "GET", headers);

// POST

const content: rcp.RequestContent = {
  "username":"dail"
}

let req_post = new rcp.Request('http://www.huawei.com', "POST", headers, content);

// PUT
const simpleForm: rcp.FormFields = {
  "key1": "value1",
  "key2": ["valueList0", "valueList1"],
};
let req_put = new rcp.Request('http://www.huawei.com', "PUT", headers, simpleForm);

// DELETE
let req_delete = new rcp.Request('http://www.huawei.com', "DELETE", headers, content);

关于post-form表单传参

export type RequestContent = string | ArrayBuffer | object | Form | MultipartForm | GetDataCallback;

RequestContent 是支持多种类型的,只要将上面的代码修改为:

const simpleForm: rcp.FormFields = {
  "key1": "value1",
  "key2": ["valueList0", "valueList1"],
};
let req_post = new rcp.Request('http://www.huawei.com', "POST", headers, simpleForm);
分享
微博
QQ
微信
回复
2024-12-27 20:12:44
相关问题
HarmonyOS RCP GET请求POST请求如何传参
527浏览 • 1回复 待解决
rcp模块能力发起post请求
1726浏览 • 1回复 待解决
HarmonyOS http 请求 post 参数问题
1579浏览 • 1回复 待解决
HarmonyOS http post请求参数传递
583浏览 • 1回复 待解决
HarmonyOS RCP POST表单提交咨询
281浏览 • 1回复 待解决
HarmonyOS HTTP-post请求接收不到参数
568浏览 • 1回复 待解决
HarmonyOS POST请求传参
561浏览 • 1回复 待解决