HarmonyOS 鸿蒙Next @ohos.url (URL字符串解析)函数异常

HarmonyOS 鸿蒙Next @ohos.url (URL字符串解析)函数异常 计划使用@ohos.url (URL字符串解析)的parseURL函数封装一个特殊URL解析器,但在工具类封装完后,使用单元测试测试时发现,parseURL函数返回的URL对象里所有属性均为空。

工具类函数如下:

import { url } from '@kit.ArkTS';

export class TotpUtil {
    static deserialize(urlStr: string) {
        let urlObj = url.URL.parseURL(urlStr);
        console.log('入参:' + urlStr);
        console.log('url: ' + urlObj.toString());
        console.log('host: ' + urlObj.host);
        console.log('hash: ' + urlObj.hash);
        console.log('hostname: ' + urlObj.hostname);
        console.log('href: ' + urlObj.href);
        console.log('origin: ' + urlObj.origin);
        console.log('password: ' + urlObj.password);
        console.log('pathname: ' + urlObj.pathname);
        console.log('port: ' + urlObj.port);
        console.log('protocol: ' + urlObj.protocol);
        console.log('search: ' + urlObj.search);
        console.log('username: ' + urlObj.username);
        urlObj.params.forEach((value, key) => {
          console.log(`${key}: ${value}`);
        });
    }
}

单测代码如下:

TotpUtil.deserialize("https://username:password@host:8080/test/test1/test3")

单测结果如下:

Running all tests
Testing started at 10:27 ...
入参:https://username:password@host:8080/test/test1/test3
url: 
host: 
hash: 
hostname: 
href: 
origin: 
password: 
pathname: 
port: 
protocol: 
search: 
username: 
Tests Run Finish.

更多关于HarmonyOS 鸿蒙Next @ohos.url (URL字符串解析)函数异常的实战教程也可以访问 https://www.itying.com/category-93-b0.html

3 回复

单元测试不支持,需要用真机测试

更多关于HarmonyOS 鸿蒙Next @ohos.url (URL字符串解析)函数异常的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


该API不支持单测及预览

针对“HarmonyOS 鸿蒙Next @ohos.url (URL字符串解析)函数异常”的问题,以下提供可能的解决方案:

在HarmonyOS系统中,如果你在使用[@ohos](/user/ohos).url进行URL字符串解析时遇到异常,这可能是由于多种原因导致的。首先,请确保你提供的URL字符串格式正确,符合URL的规范。这包括正确的协议头(如http://或https://)、正确的域名和路径等。

其次,检查你的代码中是否有对URL字符串进行不恰当的处理,如错误的编码或解码操作。这些操作可能会破坏URL的结构,导致解析失败。

此外,如果你在使用特定的API或库进行URL解析,请确保你已经正确导入并使用了这些API或库。同时,也要检查这些API或库的版本是否与你的HarmonyOS系统兼容。

如果以上步骤都无法解决问题,可能是系统或库本身存在bug。在这种情况下,你可以尝试更新你的HarmonyOS系统或相关库到最新版本,看是否能解决问题。

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

回到顶部