encodeComponent 静态方法

String encodeComponent(
  1. String component
)

使用百分号编码将字符串 component 编码,使它安全作为 URI 组件使用。

除了大写和小写字母、数字以及 -_.!~*'() 这些字符之外的所有字符都进行百分号编码。这符合 RFC 2396 中的字符集合,也指定了 ECMA-262 版本 5.1 中的 encodeUriComponent。

当手动编码路径段或查询组件时,请在构建路径或查询字符串之前分别对每部分进行编码。

在编码查询部分时,请考虑使用 encodeQueryComponent

为了避免显式编码的需要,请在构建 Uri 时使用 pathSegmentsqueryParameters 可选命名参数。

示例

const request = 'http://example.com/search=Dart';
final encoded = Uri.encodeComponent(request);
print(encoded); // http%3A%2F%2Fexample.com%2Fsearch%3DDart

实现

static String encodeComponent(String component) {
  return _Uri._uriEncode(_Uri._unreserved2396Table, component, utf8, false);
}