HarmonyOS RCP get请求时,在拦截器中增加header参数报错

class HttpHeaderInterceptor implements rcp.Interceptor {
  async intercept(context: rcp.RequestContext, next: rcp.RequestHandler): Promise<rcp.Response> {
    const url = context.request.url.toString();

    logger.debug("拦截 url:" + context.request.url.toString());

    let bundleFlags = bundleManager.BundleFlag.GET_BUNDLE_INFO_WITH_APPLICATION |
    bundleManager.BundleFlag.GET_BUNDLE_INFO_WITH_METADATA;
    let bundleData = await bundleManager.getBundleInfoForSelf(bundleFlags)
    context.request.headers!["osVersion"] = bundleData["versionName"];
    context.request.headers!["deviceid"] = deviceinfo.ODID;
    context.request.headers!["deviceModel"] = deviceinfo.distributionOSVersion;
    context.request.headers!["appName"] = "qx_harmony";


    logger.debug("最终请求:" + context.request.url.toString());
    const promise = next.handle(context);
    promise.then((resp) => {
      resp.statusCode;
    });
    return promise;
  }
}

在拦截器中增加header参数get请求报错,检查context.request.headers为空post可以。如果要get请求在拦截中增加header该如何处理?

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

可以尝试将:

context.request.headers!["osVersion"] = bundleData["versionName"];

换成:

context.request.headers.osVersion = bundleData["versionName"];
分享
微博
QQ
微信
回复
2024-12-23 20:50:59
相关问题
HarmonyOS rcp请求拦截器
1067浏览 • 1回复 待解决
HarmonyOS rcp拦截器
339浏览 • 1回复 待解决
HTTP GET请求如何传递参数
3628浏览 • 1回复 待解决
HarmonyOS RCP GET请求、POST请求如何传参
527浏览 • 1回复 待解决
HarmonyOS router有没有拦截器?
243浏览 • 1回复 待解决
使用rcp模块能力发送Get请求
1607浏览 • 1回复 待解决
HarmonyOS 是否有前置路由拦截器
284浏览 • 1回复 待解决
HarmonyOS rcp请求如何传递参数
377浏览 • 1回复 待解决