get请求中的url encode问题

首先发表一下感慨,Python的requests模块确实太简便,省却了很多的转码等等等等的问题,但这也是缺点,对于我这种基础不好的同学来说让我少知道了许多本来应该知道的东西。

url encode:

   对于get方法来说,都是把数据串联在请求的url后面作为参数,如:http://localhost:8080/servlet?msg=abc (很常见的一个乱码问题就要出现了,如果url中出现中文或其它特殊字符的话,如:http://localhost:8080 /servlet?msg=杭州,服务器端容易得到乱码),url拼接完成后,浏览器会对url进行URL encode,然后发送给服务器,URL encode的过程就是把部分url做为字符,按照某种编码方式(如:utf-8,gbk等)编码成二进制的字节码,然后每个字节用一个包含3个字符的字符串 "%xy" 表示,其中xy为该字节的两位十六进制表示形式。

时间: 2024-10-08 08:39:32

get请求中的url encode问题的相关文章

Objective-C中把URL请求的参数转换为字典

上一篇博客中是把URL转换为字典,那么我们如何把URL请求中的参数封装成字典,然后再封装成数组呢?对OC中字符串操作熟练的小伙伴们应该觉得这是一个a+b的问题,没错把URL中的参数转换为字典主要是对字符串的截取,关键是怎么个截法,才能把字符串中的参数列表分别转换成键值对.下面是小菜自己的转换思路,如果有更好的结局方法还请批评指正,相互学习交流一下,转载请注明出处. 首先我们得会一个字符串拆分函数 componentsSeparatedByString:@"&",把字符串按照&a

Jave代码中生成url http请求

public static String sendPost(String url, String param)throws Exception { PrintWriter out = null; BufferedReader in = null; String result = ""; try { URL realUrl = new URL(url); // 打开和URL之间的连接 URLConnection conn = realUrl.openConnection(); conn.

减少HTTP请求之将图片转成二进制并生成Base64编码,可以在网页中通过url查看图片(大型网站优化技术)

原文:减少HTTP请求之将图片转成二进制并生成Base64编码,可以在网页中通过url查看图片(大型网站优化技术) 在网站开发过程中,对于页面的加载效率一般都想尽办法求快.那么,怎么让才能更快呢?减少页面请求 是一个优化页面加载速度很好的方法.上一篇博文我们讲解了 “利用将小图标合成一张背景图来减少HTTP请求”,那么,这一篇博文将讲解  “ 将图片转成二进制并生成Base64编码,可以在网页中通过url查看图片”. 一.为何选择将图片转成二进制并生成Base64编码,可以在网页中通过url查看

ios 网络请求总结加强对中文的处理 问题:URL不允许写中文 在GET请求中,相关代码段打断点以验证。

开发还是需要多多练习的 ,下面是一些常用的步骤: 一.简单说明 创建Get 请求 //    1.设置请求路径 NSString *urlStr=[NSString stringWithFormat:@"http://192.168.1.53:8080/MJServer/login?username=%@&pwd=%@",self.username.text,self.pwd.text]; NSURL *url=[NSURL URLWithString:urlStr]; //

GET请求中URL的最大长度限制总结

由于jsonp跨域请求只能通过get请求,url长度根据浏览器及服务器的不同而有不同限制. 若要支持IE的话,最大的长度为2083字符,若是中文字符的话只有2083/9=231个字符. 若是Chrom... 关键字:   服务器,浏览器,url长度限制 今天在写一个php相应jsonp请求的功能时,发现当url中包含的请求参数过长时会返回414错误. 如下图 <html> <head><title>414 Request-URI Too Large</title&

你真的了解URL encode吗?

最近因项目需要,需重写网络组件.在重写及review项目组的网络组件旧代码时,发现对URL编码有不严谨之处.当说到这种写法其实是有问题时,几个同事都表示非常诧异并几度辩驳.本人表示有点小心惊,在网上搜索时还真的很少有另外的写法.在此以自己的一些理解和经验,做一下URL编码的普及,希望对大家有所帮助,有问题也请不吝赐教. (参考RFC1738,3986,6874,7320) 一.了解URL编码以及编码时机.运算过程 URI包括URL和URN,常用说法URL encode实际是遵循URI的相关文件.

Django中的URL配置和模板

Django中的URL配置 : 实例: Python代码   urlpatterns = patterns('', # Example: # (r'^myweb/', include('myweb.foo.urls')), # Uncomment the admin/doc line below and add 'django.contrib.admindocs' # to INSTALLED_APPS to enable admin documentation: # (r'^admin/doc

在浏览器的地址栏中输入url后发生了什么

这是一个非常有意思的事情,通过这个我们可以更好地理解http请求. 在浏览器的地址栏中输入url后会经历下面的步骤: 第一步:进行域名解析--- 浏览器搜索自身的DNS缓存,如果有缓存,再看有没有过期,如果没过期,就是用这个ip,如果过期,这个过程就结束了. 注:查看谷歌浏览器的dns缓存的方法--在地址栏中输入chrome://net-internals/#dns 这样就可以看到自己的浏览器中的dns缓存. 第二步:如果浏览器没有搜索到自身的dns缓存或者是自身的dns缓存已经失效,那么它就会

MVC中的URL路由(一)

URL路由系统通过对请求地址进行解析从而得到以目标Controller名称为核心的路由数据.Url路由系统最初是为了实现请求url与物理文件路径分离而建立的,MVC的Url Route是将Url地址与物理文件映射转移到了目标Controller的映射. Url路由不是ASP.NET MVC特有的,而是建立在ASP.NET上面的,MVC的只是对这个路由的拓展使用(asp.net也开始使用这拓展了). 我们在App_Start文件夹中找到RouteConfig.cs的文件,打开看 1 public