URL URI傻傻分不清楚,dart告诉你该怎么用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了URL URI傻傻分不清楚,dart告诉你该怎么用相关的知识,希望对你有一定的参考价值。

参考技术A 如果我们要访问一个网站,需要知道这个网站的地址,网站的地址一般被称为URL,他的全称是Uniform Resource Locator。那么什么是URI呢?

URI的全程是Uniform Resource Identifier,也叫做统一资源标志符。

URI用来对资源进行标记,而URL是对网络上的资源进行标记,所以URL是URI的子集。

了解了URI和URL之间的关系之后,我们来看看dart语言对URI的支持。

dart中为URI创建了一个专门的类叫做Uri:

Uri是一个抽象类,他定义了一些对URI的基本操作。它有三个实现类,分别是_Uri,_DataUri和_SimpleUri。

接下来,我们一起来看看,dart中的Uri都可以做什么吧。

为什么要对encode URI?

一般来说URI中可以包含一些特殊字符,像是空格或者中文等等。这些字符在传输中可能不被对方所认识。所以我们需要对Uri进行编码。

但是对于URI中的一些特殊但是有意义的字符,比如: /, :, &, #, 这些是不用被转义的。

所以我们需要一种能够统一编码和解码的方法。

在dart中,这种方法叫做encodeFull() 和 decodeFull():

如果要编码所有的字符,包括那些有意义的字符:/, :, &, #, 那么可以使用encodeComponent() 和 decodeComponent():

URI是由scheme,host,path,fragment这些部分组成的。我们可以通过Uri中的这些属性来对Uri进行分解:

那么怎么构造Uri呢?我们可以使用Uri的构造函数:

dart为我们提供了非常简单的Uri的使用工具。

以上是关于URL URI傻傻分不清楚,dart告诉你该怎么用的主要内容,如果未能解决你的问题,请参考以下文章

接口和抽象类,傻傻分不清楚?

Java:接口和抽象类,傻傻分不清楚?

RNA-Seq分析RPKM, FPKM, TPM, 傻傻分不清楚?

分布式,微服务,集群,傻傻分不清楚

依赖倒置依赖注入和控制反转傻傻分不清楚?

httphttps 傻傻分不清楚?别再上当受骗了!