HarmonyOS 鸿蒙Next 使用 @ohos.uri 进行 uri 解析时无法解析出特殊符号的 host 信息

发布于 1周前 作者 ionicwang 最后一次编辑是 5天前 来自 鸿蒙OS

HarmonyOS 鸿蒙Next 使用 @ohos.uri 进行 uri 解析时无法解析出特殊符号的 host 信息

1let result = new uri.URI(“https://*.antfans.com”);
解析出来的结果是:{“scheme”:“https”,“host”:null,“path”:null}

2let result = new uri.URI(https://鲸探.antfans.com) 解析出来的结果是:{“scheme”:“https”,“host”:null,“path”:null}


更多关于HarmonyOS 鸿蒙Next 使用 @ohos.uri 进行 uri 解析时无法解析出特殊符号的 host 信息的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html

2 回复
new uri.URI(url)从API version 9开始废弃,建议使用parseURL替代。:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-url-V5#parseurl9

另外uri模块当前支持解析 仅标准uri格式的链接,建议核对格式。参考文档格式说明:

https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-uri-V5#%E5%91%BD%E5%90%8D%E8%A7%84%E5%88%99

url有特殊字符比如回车、空格可以使用encodeURIComponent(‘abcd==’) //输出abcd%3D%3D。

更多关于HarmonyOS 鸿蒙Next 使用 @ohos.uri 进行 uri 解析时无法解析出特殊符号的 host 信息的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS鸿蒙Next系统中,使用@ohos.uri进行URI解析时,若遇到无法正确解析出包含特殊符号的host信息的问题,通常是因为URI的编码和解码处理不当。特殊符号在URI中通常需要进行百分比编码(Percent-Encoding),以确保其被正确传输和解析。

确保你的URI在传递之前已经对特殊符号进行了正确的编码。例如,空格应编码为%20#应编码为%23%本身应编码为%25,等等。在解析URI时,解析器应能自动识别并解码这些编码后的特殊符号。

如果在使用@ohos.uri API时,即使URI已经正确编码,仍然无法解析出host信息,可能是因为API内部对URI的解析逻辑对特殊符号的处理有特定的限制或要求。此时,可以检查API的文档,确认是否有关于特殊符号处理的特别说明。

如果上述方法都不能解决问题,可能是API本身存在bug或限制。此时,建议直接联系鸿蒙系统的开发者支持团队,但按照要求,这里不提供直接联系建议。你可以访问官网客服页面寻求帮助。

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部