5.10.1 Uri-Host,Uri-Port,Uri-Path,Uri-Query
Uri-Host,Uri-Port,Uri-Path,Uri-Query选项都用来定位一个向原始服务端请求的目标资源。选项将请求URI的不同组件进行编码,在这些选项的value值中,看不到百分号编码(也称URL编码),且完整的URI能够在任何有关的端被重建。CoAP URI的语义在第六章定义。
将URI解析成选项的步骤定义在6.4节。这些步骤是由请求中的0个或者多个Uri-Host,Uri-Port,Uri-Path,Uri-Query选项决定,每个选项包含以下信息:
Uri-Host选项定义了被请求资源的网络主机;
Uri-Port选项定义了资源在传输层的端口号;
每个Uri-Path选项定义了一段资源的绝对路径;
每个Uri-Query选项定义了一个资源的参数。
注意:Fragments([RFC3986],见3.5节)并不是URI请求的一部分,因此在CoAP请求中不会被传输。
Uri-Host选项的默认值是请求消息的目的IP地址。同样地,Uri-Port选项的默认值即UDP的端口号。Uri-Host和Uri-Port选项的默认值对于大部分服务端来说已经足够了。当一个端有多个虚拟服务端时才会使用明确的Uri-Host和Uri-Port选项。
Uri-Path和Uri-Query选项能够被任何字符顺序编码。不会采用百分号编码。Uri-Path选项的值必须不可以是“.”或者“..”(因此URI请求必须在将填充选项前将它们解析替换掉)。
例子可以在附录B找到。
最后更新于
这有帮助吗?