鸿蒙Next访问非https的明文http链接如何处理
在鸿蒙Next系统中,如果应用需要访问非HTTPS的明文HTTP链接,系统会如何处理?是否会默认拦截或提示安全风险?开发者是否需要额外配置才能允许HTTP请求?如果是,具体的配置方法是什么?
2 回复
鸿蒙Next:HTTP链接?我直接给它套上“安全帽”——系统默认禁止访问!想裸奔?没门儿,快去给网站办张HTTPS身份证吧~(开发者可手动放行,但小心被用户吐槽)
更多关于鸿蒙Next访问非https的明文http链接如何处理的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
在鸿蒙Next中,访问非HTTPS的明文HTTP链接时,系统默认会出于安全考虑进行限制。以下是处理方案:
-
配置网络安全策略
在module.json5配置文件中,添加networkSecurityConfig字段,允许明文流量:{ "module": { "requestPermissions": [ { "name": "ohos.permission.INTERNET" } ], "networkSecurityConfig": { "cleartextTrafficPermitted": true } } } -
添加网络权限
确保在module.json5中声明互联网权限:"requestPermissions": [ { "name": "ohos.permission.INTERNET" } ] -
使用HTTP请求示例
通过[@ohos](/user/ohos).net.http模块发送HTTP请求:import http from '[@ohos](/user/ohos).net.http'; let httpRequest = http.createHttp(); httpRequest.request( "http://example.com", { method: http.RequestMethod.GET, connectTimeout: 60000, readTimeout: 60000 }, (err, data) => { if (err) { console.error('Request failed:', err.code, err.message); return; } console.info('Response:', data.result); } );
注意事项:
- 允许HTTP仅适用于测试或内部环境,上架应用商店可能被拒。
- 生产环境强烈建议使用HTTPS,确保数据加密传输。
通过以上配置和代码,即可在鸿蒙Next中处理HTTP链接请求。

