- 我的博客:https://blog.csdn.net/qq_37388044
- 我的知乎:https://www.zhihu.com/people/bbtganmin
- 联系方式:知乎私信
转载或者引用本文内容请注明来源及原作者!
前言
之前在做http时遇到一个问题,在url参数有空格,http服务器解析时出错,无法正常响应。
继 棒棒糖男孩:用C语言实现简单的HTTP数据请求
- 如果http请求时要加一个参数 id = bbt boy,那么请求报文第一行:
GET /bbt/nowtime?id=bbt boy HTTP/1.1
- 这里就会出现一个问题,http协议是用空格来格开"GET"、url、“HTTP/1.1"的,如果url里也有空格,那服务器就没法找到"HTTP/1.1”,所以格式就乱套了。
这种情况我们需要通过URL编码来解决。
一、什么是URL编码
url编码是一种浏览器用来打包表单输入的格式。浏览器从表单中获取所有的name和其中的值 ,将它们以name/