热门推荐
postgre 替换 nvl2 post代替get
2024-11-13 19:08  浏览:78

postgre 替换 nvl2 post代替get

要想答好这个题,要分两步

第一步:先来一句总结性的话

GET和POST是没有本质区别的~~

(使用GET实现的场景,基本都可以使用POST来代替,使用POST实现的场景,也可以使用GET来代替)

第二步,再来谈谈细节上的区别

(1)GET的语义是“从服务器获取数据”,POST的语义是“往服务器上提交数据”

(2)使用习惯上,给服务器传递的数据,GET通常放在URL的 query string中,而POST通常是放在body中

postgre 替换 nvl2 post代替get_服务器

 (3)GET请求建议实现成“幂等”的,POST一般不要求实现成“幂等”

幂等的意思是,知道输入结果,也知道对应的输出结果,你输入csdm官网的URL,网页就会跳转到csdm官网,而不会跳转到不孕不育的界面,这就是幂等的

设计服务器的时候,就需要提供一些“接口/api”

api传入的参数,就视为输入

api返回的结果,就视为输出

基于GET的api一般都会建议设计成幂等的,基于POST的api则无要求~~

如果不是幂等的,有时候我们搜索一些关键词,跳出来的广告,在你重复刷新后,你会发现显示的广告虽然还是广告,但是内容不一样了,这就是不是幂等的结果

(4)在幂等的基础上,GET的请求是可以被缓存的,POST则一般不会缓存

缓存是浏览器的默认行为,因为你会经常登录csdm的官网,csdm的有些内容是会被缓存下来的,之后你在次搜索,就会提高效率(大致意思)

如果GET是幂等的,没事,不用管,但如果GET不是幂等的,那就要让每次GET请求的URL都不相同,通过特殊的query string来保证url不同,这样就避免产生缓存了


网上会有这样一个说法:POST比GET更安全

这个说法的依据是:GET把参数放在url里面,如果实现登录页面,一登录,你的用户名和密码就直接以query sting 的形式放在url里卖了,就直接显示带浏览器的地址栏中了,这样就不太安全

而POST则是把参数放到body中,不会显示到浏览器界面上,手艺不会直接显示出来就更安全了

注意:这个说法是错误的,数据安全不是光靠是否显示出来就不安全来判定的

    以上就是本篇文章【postgre 替换 nvl2 post代替get】的全部内容了,欢迎阅览 ! 文章地址:http://sicmodule.glev.cn/quote/314.html 
     行业      资讯      企业新闻      行情      企业黄页      同类资讯      网站地图      返回首页 歌乐夫资讯移动站 http://sicmodule.glev.cn/mobile/ , 查看更多