Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ssis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Rest 为什么有些URL有像%20这样有趣的字符?_Rest_Url - Fatal编程技术网

Rest 为什么有些URL有像%20这样有趣的字符?

Rest 为什么有些URL有像%20这样有趣的字符?,rest,url,Rest,Url,我遇到了一个有趣的URL,看起来像这样 http://127.0.0.1:8888//echo/this%20is%20just%20a%20test 这使得restapi看起来很奇怪。有什么正当的理由吗?或者这只是一个程序员的古怪习惯?REST API避免在URL中使用有趣的字符是一种好的做法吗?这是URL中不允许的字符的URL编码%20是一个空格。%20表示一个空格字符,它只是,也称为 URL中不允许使用某些字符,例如空格字符。 如果URL包含此类字符,则需要对其进行正确编码 引用关于统一

我遇到了一个有趣的URL,看起来像这样

http://127.0.0.1:8888//echo/this%20is%20just%20a%20test

这使得restapi看起来很奇怪。有什么正当的理由吗?或者这只是一个程序员的古怪习惯?REST API避免在URL中使用有趣的字符是一种好的做法吗?

这是URL中不允许的字符的URL编码<代码>%20是一个空格。

%20
表示一个
空格
字符,它只是,也称为

URL中不允许使用某些字符,例如
空格
字符。
如果URL包含此类字符,则需要对其进行正确编码

引用关于统一资源标识符(URI)的信息:

百分比编码机制用于表示数据中的八位字节 当八位字节的对应字符位于 允许的集合或正在用作 组成部分。百分比编码的八位字节编码为字符 三元组,由百分比字符“%”后跟两个 表示该八位字节数值的十六进制数字。对于 例如,“%20”是二进制八位字节的编码百分比 “00100000”(ABNF:%x20),在US-ASCII中对应于空格 字符(SP)


可能重复,所以,没有REST API会使用像%20这样的字符?我想使用它们并不违法,但是,由于这会降低可读性,可能最好避免使用。您必须记住%20不是字符,而是url中的编码。