• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# URI字符串解析
2
3> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:**
4> 本模块首批接口从API version 8开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
5
6
7## 导入模块
8
9```js
10import uri from '@ohos.uri'
11```
12
13## URI
14
15### 属性
16
17**系统能力:** SystemCapability.Utils.Lang
18
19| 名称 | 参数类型 | 可读 | 可写 | 说明 |
20| -------- | -------- | -------- | -------- | -------- |
21| scheme | string | 是 | 否 | 获取URI 的协议部分。 |
22| userInfo | string | 是 | 否 | 获取 URI 的用户信息部分。 |
23| host | string | 是 | 否 | 获取 URI 的主机名部分(不带端口)。 |
24| port | string | 是 | 否 | 获取 URI 的端口部分。 |
25| path | string | 是 | 否 | 获取 URI 的路径部分。 |
26| query | string | 是 | 否 | 获取 URI 的查询部分。 |
27| fragment | string | 是 | 否 | 获取 URI 的片段部分 |
28| authority | string | 是 | 否 | 获取此URI的解码权限组件部分。 |
29| ssp | string | 是 | 否 | 获取URI的解码方案特定部分。 |
30
31
32### constructor
33
34constructor(uri: string)
35
36constructor是URI的构造函数。
37
38**系统能力:** SystemCapability.Utils.Lang
39
40**参数:**
41
42| 参数名 | 类型 | 可读 | 可写 | 说明 |
43| -------- | -------- | -------- | -------- | -------- |
44| uri | string | 是 | 是 | 入参对象。 |
45
46**示例:**
47
48```js
49var mm = 'http://username:password@host:8080/directory/file?foo=1&bar=2#fragment';
50new uri.URI(mm); // Output 'http://username:password@host:8080/directory/file?foo=1&bar=2#fragment';
51```
52```js
53new uri.URI('http://username:password@host:8080'); // Output 'http://username:password@host:8080';
54```
55
56
57### toString
58
59toString(): string
60
61**系统能力:** SystemCapability.Utils.Lang
62
63返回适用于URI中的查询字符串。
64
65**返回值:**
66
67| 类型 | 说明 |
68| -------- | -------- |
69| string | 返回网址的字符串序列化。 |
70
71**示例:**
72
73```js
74const uri = new uri.URI('http://username:password@host:8080/directory/file?query=pppppp#qwer=da');
75uri.toString()
76```
77
78
79### equals
80
81equals(other: URI): boolean
82
83判断此URI是否与其他URI对象相等。
84
85**系统能力:** SystemCapability.Utils.Lang
86
87**参数:**
88
89| 参数名 | 类型 | 必填 | 说明 |
90| -------- | -------- | -------- | -------- |
91| other | [URI](#uri) | 是 | 需要比较的URI对象。 |
92
93**返回值:**
94
95| 类型 | 说明 |
96| -------- | -------- |
97| boolean | 返回true表示相等,否则返回false。 |
98
99**示例:**
100
101```js
102const uriInstance = new uri.URI('http://username:password@host:8080/directory/file?query=pppppp#qwer=da');
103const uriInstance1 = new uri.URI('http://username:password@host:8080/directory/file?query=pppppp#qwer=da#fragment');
104uriInstance.equals(uriInstance1);
105```
106
107### checkIsAbsolute
108
109checkIsAbsolute(): boolean
110
111判断此URI是否为绝对URI(是否定义了scheme组件)。
112
113**系统能力:** SystemCapability.Utils.Lang
114
115**返回值:**
116
117| 类型 | 说明 |
118| -------- | -------- |
119| boolean | 返回true表示该URI是否为绝对URI。 |
120
121**示例:**
122
123```js
124const uriInstance = new uri.URI('http://username:password@www.qwer.com:8080?query=pppppp');
125uriInstance.checkIsAbsolute();
126```
127
128
129### normalize
130
131normalize(): URI
132
133规范化此URI的路径。
134
135**系统能力:** SystemCapability.Utils.Lang
136
137**返回值:**
138
139| 类型 | 说明 |
140| -------- | -------- |
141| URI | 返回一个path被规范化后的URI对象。 |
142
143**示例:**
144```js
145const uriInstance = new uri.URI('http://username:password@www.qwer.com:8080/path/path1/../path2/./path3?query=pppppp');
146let uriInstance1 = uriInstance.normalize();
147uriInstance1.path;
148```
149