• http请求(get 和 post 请求)与响应


    版权声明:欢迎转载 https://blog.csdn.net/chenmoquan/article/details/36656101

    一、http请求

    http请求基本格式

    ===================================================

    <request line> 请求行

    <headers>  请求头(參数头)

    <blank line>   空白行

    [<request-body>]  请求实体(get没有  post有)

    ======================================

    1.1 请求行:

    位于请求消息的第一行

    格式:请求方式 资源路径 HTTP版本号号<CRLF回车换行空格制表符>

    经常使用请求方式:get和post方式

    get与post差别:

    (1)   在client。get方式在通过URL提交数据。数据URL中能够看到;post方式。数据放置在HTML HEADER内提交。

    (2) get方式提交的数据最多仅仅能有1k。而POST则没有此限制。

    (3)安全性问题。

    使用 get的时候。參数会显示在地址栏上,不安全,而 post不显示,安全。假设这些数据是中文数据并且是非敏感数据,那么使用 get;假设用户输入的数据不是中文字符并且包括敏感数据,那么还是使用 post为好。

    (4)幂等性    

    1.2 參数头:从第二行開始到第一个空行。

    作用:向server传递client的一些基本信息


    二、http响应

    http响应基本格式

    ===================================================

    <status line> 状态行

    <headers>  响应头

    [<request-body>]  响应实体

    ======================================

    唯一真正的差别在于第一行中用状态行取代了请求行。状态行status line)通过提供一个状态码来说明所请求的资源情况。


    状态码 含义
    100~199 表示成功接收请求,要求client继续提交下一次请求才干完毕整个处理过程
    200~299 表示成功接收请求并已完毕整个处理过程
    300~399 为完毕请求,客户需进一步细化请求。

    比如,请求的资源已经移动一个新地址

    400~499 client的请求有错误
    500~599 server端出现错误


    经常使用状态码:
    200(正常):表示一切正常,返回的是正常请求结果


    302/307(暂时重定向):指出被请求的文档已被暂时移动到别处,此文档的新的URL在Location响应头中给出。


    304(未改动):表示客户机缓存的版本号是最新的。客户机能够继续使用它。无需到server请求。


    404(找不到):server上不存在客户机所请求的资源。


    500(server内部错误):server端的程序错误发生





  • 相关阅读:
    关于scanf、getchar、getch、getche缓冲区分析——C语言
    堆排序(大顶堆、小顶堆)----C语言
    预处理命令使用详解----#if、#endif、#undef、#ifdef、#else、#elif
    参数传递---关于数组的退化
    控制台API函数----HANDLE、SetConsoleCursorPosition、SetConsoleTextAttribute
    二叉树的遍历(前序、中序、后序、已知前中序求后序、已知中后序求前序)
    Fiddler 插件开发,使用 WPF 作为 UI 控件
    从程序集加载类型,遇到 ReflectionTypeLoadException 的处理办法
    如何将应用程序与文件类型(文件扩展名)关联起来?
    为什么 WPF 的 Main 方法需要标记 STAThread 。
  • 原文地址:https://www.cnblogs.com/ldxsuanfa/p/10562751.html
  • Copyright © 2020-2023  润新知