HarmonyOS鸿蒙Next中真机测试使用HTTP请求需要配置什么

HarmonyOS鸿蒙Next中真机测试使用HTTP请求需要配置什么

配置了

{
  "requestPermissions": [
    {
      "name": "ohos.permission.INTERNET",
      "reason": "$string:internet_permission_reason",
      "usedScene": {
        "abilities": [
          "EntryAbility"
        ],
        "when": "always"
      }
    },
    {
      "name": "ohos.permission.GET_NETWORK_INFO",
      "reason": "$string:network_permission_reason",
      "usedScene": {
        "abilities": [
          "EntryAbility"
        ],
        "when": "always"
      }
    },
    {
      "name": "ohos.permission.SET_NETWORK_INFO",
      "reason": "$string:network_permission_reason",
      "usedScene": {
        "abilities": [
          "EntryAbility"
        ],
        "when": "always"
      }
    }
  ]
}

但是还是访问不到后端接口,使用的API9,是SDK9自带的http工具无法在真机上使用吗


更多关于HarmonyOS鸿蒙Next中真机测试使用HTTP请求需要配置什么的实战教程也可以访问 https://www.itying.com/category-93-b0.html

7 回复

要用ip地址或域名,不能用localhost或127.0.0.1;后端要允许跨域;还要注意是不是被防火墙限制了访问

更多关于HarmonyOS鸿蒙Next中真机测试使用HTTP请求需要配置什么的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


用的是IP地址,我的手机的4.2.0版本,ecodev是3.1.0,是不是这个版本不支持真机?

你的后端接口,或者说服务器环境,是不是在你本地电脑上运行的?

是的,我手机浏览器都可以访问到,

手机电脑同一个wifi,然后ipconfig,获取你wifi的ip地址,改成这个接口地址,

在HarmonyOS Next中进行真机HTTP请求测试需要:

  1. config.json中配置网络权限:

    "reqPermissions": [
      {
        "name": "ohos.permission.INTERNET"
      }
    ]
    
  2. 使用[@ohos](/user/ohos).net.http模块发起请求:

    import http from '[@ohos](/user/ohos).net.http';
    let httpRequest = http.createHttp();
    httpRequest.request("https://example.com", (err, data) => {
      // 处理响应
    });
    
  3. 确保设备已开启网络连接。

在HarmonyOS Next中进行HTTP真机测试时,除了配置正确的网络权限外,还需要注意以下几点:

  1. 网络配置检查:
  • 确保设备已开启网络连接
  • 如果是本地测试,确保手机和服务器在同一局域网
  • 检查接口URL是否正确可用
  1. 安全配置要求:
  • 从API9开始,默认禁止明文HTTP传输,必须使用HTTPS
  • 如需使用HTTP,需要在config.json中添加网络安全配置:
"deviceConfig": {
  "default": {
    "network": {
      "cleartextTraffic": true
    }
  }
}
  1. 权限配置: 您已正确配置了INTERNET、GET_NETWORK_INFO和SET_NETWORK_INFO权限,这是基础要求。

  2. 真机调试建议:

  • 检查设备开发者选项中的网络权限设置
  • 使用抓包工具(如Charles)确认请求是否发出
  • 查看Logcat日志中的网络错误信息
  1. 代码实现: 确保使用正确的http模块(如@ohos.net.http)并正确处理响应和错误回调。

如果仍然无法访问,建议检查服务器防火墙设置和接口可用性。

回到顶部