get 和 post请求的区别

    xiaoxiao2022-07-12  148

    在了解get 和 post请求的区别之前,我们首先要知道什么是get请求和post请求。

    get和post是什么

    get 和 post请求是http协议中的两种请求方式,get一般用来获取服务器的信息的,post一般是用来更新信息的,当然,http协议中还有其他协议,比如put、delete等。

    两者的区别

    1. get请求的数据会附在URL之后(就是把数据放置在HTTP协议头中),以?分割URL和传输数据,参数之间以&相连,如:login.action?name=hyddd&password=idontknow&verify=你好。如果数据是英文字母/数字,原样发送,如果是空格,转换为+,如果是中文/其他字符,则直接把字符串用BASE64加密,得出如:你好,其中%XX中的XX为该符号以16进制表示的ASCII。   post请求是把请求的数据放在请求体中。   但是这种做法也不时绝对的,大部分人的做法也是按照上面的说法来的,但是也可以在get请求加上 request body,给 post请求带上 URL 参数。 2.  get请求提交的url中的数据最多只能是1024字节,这个限制是浏览器或者服务器给添加的,http协议并没有对url长度进行限制,目的是为了保证服务器和浏览器能够正常运行,防止有人恶意发送请求。   post请求则没有大小限制。。 3. post请求相对于get请求更安全。因为get请求传递的参数会显示在url中,用户在访问的时候浏览器会缓存网页,这样别人在查看浏览器浏览记录的时候会获取私人信息,post请求不会被用户看到,所以安全性高。 4. get方式需要使用Request.QueryString来取得变量的值,而post方式通过Request.Form来获取变量的值。   Request.QueryString用法:    如<a href=”4-1.asp?name=白芸&age=22”>    就可以用request.querystring(“name”)来获得上面链接传来的参数值.    例:a1=request.querystring("name")    a2=request.querystring("age")    则 a1为"白芸",a2为"22".   Request.Form用法:    在CS文件中获得对应页面中的下拉框DropDownList_sitebranch值可以有以下几种方法获得:    siteInfo.FZJGID = Request.Form["DropDownList_sitebranch"].ToString();

    最新回复(0)