let params = new Map<string, string>()
params.set('pageCode', '10000')
let client = http.createHttp()
client.request(Url.BASE_URL + Url.JSON_MODEL, { extraData: params }
, (err: BusinessError, data: http.HttpResponse) => {
if (!err) {
console.info(JSON.stringify(data.result))
} else {
console.error(JSON.stringify(err))
}
})
Map使用set方法后台无法获取到前端传的参数pageCode
map无法被序列化,不是有效的参数,如需传递map类型的参数,可以把键值用类的形式构建出来,然后用new出一个类对象来传递。
网络请求中的入参参考 HttpRequestOptions.extraData 描述,文档链接:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-http-V5\#httprequestoptions
框架的支持度是固定的,技术实现上的实现可以自定义调整,如
1,content-Type’为’application/x-www-form-urlencoded’时,请求提交的信息主体数据应在key和value进行URL转码后按照键值对"key1=value1&key2=value2&key3=value3"的方式进行编码,该字段对应的类型通常为String;
2,content-Type’为’application/json’时,将对象的属性值设置为JSON字符串,{param: jsonStr},获取到接收端获取到param后再解析