Http请求出错 HarmonyOS 鸿蒙Next

发布于 1周前 作者 ionicwang 来自 鸿蒙OS

Http请求出错 HarmonyOS 鸿蒙Next

我http请求一直报错

cke_627.png

代码如下

cke_3156.png

在module里面配置了网络了


更多关于Http请求出错 HarmonyOS 鸿蒙Next的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html

7 回复

更多关于Http请求出错 HarmonyOS 鸿蒙Next的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


和这位的错误信息一样,但是他的解决方法并不适用

可以给一个最小复现demo,看看具体问题

页面import { http } from ‘@kit.NetworkKit’; import { JSON } from ‘@kit.ArkTS’;

@Entry @Component struct SearchCity { @State changeValue: string = ‘’ @State submitValue: string = ‘’ myKey : String = ‘af803f0eb311454d9c407edea573568b’ controller: SearchController = new SearchController()

build() { Column({space: 10}) { Search({ value: this.changeValue, placeholder: ‘搜索城市’, controller: this.controller }) .searchButton(‘搜索’) .width(‘95%’) .height(40) .backgroundColor(’#F5F5F5’) .placeholderColor(Color.Grey) .placeholderFont({ size: 14, weight: 400 }) .textFont({ size: 14, weight: 400 }) .onSubmit((value: string) => { this.submitValue = value; let cityName = encodeURIComponent(this.submitValue); let myUrl: string = “https://geoapi.qweather.com/v2/city/lookup?location=” + cityName + “&key=” + this.myKey + “&number=1”; this.getLocation(myUrl); }) .onChange((value: string) => { this.changeValue = value }) .margin(20) }.width(‘100%’) }

getLocation(url:string){ let httpRequest = http.createHttp(); console.info(url); let promise = httpRequest.request(url, { method: http.RequestMethod.GET }); promise.then((value) => { if(value.responseCode === 200){ console.info(‘Result:’ + JSON.stringify(value.result)); } }) httpRequest.destroy(); } }

module.json5

{ “module”: { “name”: “entry”, “type”: “entry”, “description”: “$string:module_desc”, “mainElement”: “EntryAbility”, “deviceTypes”: [ “phone”, “tablet”, “2in1” ], “deliveryWithInstall”: true, “installationFree”: false, “pages”: “$profile:main_pages”, “abilities”: [ { “name”: “EntryAbility”, “srcEntry”: “./ets/entryability/EntryAbility.ets”, “description”: “$string:EntryAbility_desc”, “icon”: “$media:layered_image”, “label”: “$string:EntryAbility_label”, “startWindowIcon”: “$media:startIcon”, “startWindowBackground”: “$color:start_window_background”, “exported”: true, “skills”: [ { “entities”: [ “entity.system.home” ], “actions”: [ “action.system.home” ] } ] } ], “extensionAbilities”: [ { “name”: “EntryBackupAbility”, “srcEntry”: “./ets/entrybackupability/EntryBackupAbility.ets”, “type”: “backup”, “exported”: false, “metadata”: [ { “name”: “ohos.extension.backup”, “resource”: “$profile:backup_config” } ], } ], “requestPermissions”: [ {“name” : “ohos.permission.INTERNET”, “usedScene”: { “when”: “always” } }, { “name”: “ohos.permission.GET_NETWORK_INFO” } ] } }

用的是mac吗?

针对您提到的“Http请求出错 HarmonyOS 鸿蒙Next”问题,这通常可能是由于多种原因导致的,包括但不限于网络问题、API调用错误、权限设置不当或系统环境配置有误等。以下是一些可能的排查方向:

  1. 检查网络连接:确保设备已连接到稳定的网络,并尝试使用其他网络环境(如切换到4G/5G或不同的Wi-Fi)来测试。

  2. 验证API和URL:仔细检查您调用的HTTP请求的URL和API参数是否正确,确保符合服务端要求。

  3. 权限配置:确认您的应用已正确配置必要的网络访问权限,包括Internet和特定网络协议的权限。

  4. 系统日志:查看系统日志以获取更多关于错误的详细信息,这有助于定位问题。

  5. 依赖库和框架:确保您使用的HTTP客户端库(如OkHttp、Retrofit等)是最新的,且与您的HarmonyOS版本兼容。

  6. 重启设备:有时简单的重启设备可以解决一些临时的网络或系统问题。

如果上述方法都不能解决问题,请尝试联系官方客服获取更专业的技术支持。如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部