zoukankan      html  css  js  c++  java
  • HTTP状态码302、303、307区别

    HTTP状态码3XX表示重定向,表明浏览器需要执行某些特殊的处理以正确处理请求。

    301 Moved Permanently 
    永久性定向。该状态码表示请求的资源已被分配了新的URI,以后应使用资源现在所指的URI。

    302 Found 
    临时性重定向。该状态码表示请求的资源已被分配了新的URI,希望用户(本次)能使用新的URI访问。和301相似,但302表示的资源不是永久移动,只是临时性的。换句话说,已移动的资源对应的URI将来还有可能发生变化,比如,用户把uri保存为书签,但不会像301状态码出现时那样更新书签,而是仍旧保留返回302状态码的页面对应的uri

    303 See Other 
    该状态码表示由于请求对应的资源存在着另一个URI,应使用GET方法定向获取请求的资源,=, 
    303和302状态码有着相同的功能,但是303明确表示客户端应当采用get方法获取资源,这点与302状态码有区别。 
    比如,当使用post方法访问CGI程序,其执行后的处理结果为希望客户端能以get方法重定向到另一个uri上去时,返回303状态码。虽然302也可实现相同的功能,但这里使用302状态码是最理想的。

    当301、302、303响应状态码返回时,几乎所有浏览器都会把post改成get,并删除请求报文内的主体,之后请求会自动再次发送。 
    301、302标准是禁止将post方法改变成get方法的,但实际使用时大家都会这么做。

    307 Temporary Redirect 
    临时重定向。该状态码与302有相同的含义。尽管302标准禁止post变化get,但实际使用时大家不遵守。 
    307会遵照浏览器标准,不会从post变为get。但是对于处理响应时的行为,各种浏览器有可能出现不同的情况。

  • 相关阅读:
    Dubbo 节点telnet测试
    node.js 文件下载
    node.js获取ip及mac
    excel中根据A列筛选B列填充C列
    django在读取数据库时未筛选到符合条件的记录会报错
    django分页功能
    django中命令行调试程序
    Python中if-else的多种写法
    python自定义函数的参数之四种表现形式
    python类变量和实例变量的区别
  • 原文地址:https://www.cnblogs.com/aliwa/p/8495014.html
Copyright © 2011-2022 走看看