• http抓包—Content-Type讲解


    1、Content-Type的定义

    Content-Type(MediaType),即是Internet Media Type,互联网媒体类型,也叫做MIME类型。在互联网中有成百上千中不同的数据类型,HTTP在传输数据对象时会为他们打上称为MIME的数据格式标签,用于区分数据类型。

    在HTTP协议消息头中,使用Content-Type来表示请求和响应中的媒体类型信息。它用来告诉服务端如何处理请求的数据,以及告诉客户端(一般是浏览器)如何解析响应的数据,比如显示图片,解析并展示html等等。

    http协议是建立在tcp/ip协议之上的应用层协议,主要包括三个部分,状态行,头部信息,消息主体。对应一个http请求就是:请求行,请求头,请求体。协议规定post提交的数据,必须包含在消息主体中entity-body中,但是协议并没有规定数据使用什么编码方式。开发者可以自己决定消息主体的格式。数据发送出去后,需要接收的服务端解析成功,一般服务端会根据content-type字段来获取参数是怎么编码的,然后对应去解码。

     

    2、Content-Type的格式:

    Content-Type:type/subtype ;parameter

    type:主类型,任意的字符串,如text,如果是*号代表所有;
    subtype:子类型,任意的字符串,如html,如果是*号代表所有,用“/”与主类型隔开;
    parameter:可选参数,如charset,boundary等。
    例如:
    Content-Type: text/html;
    Content-Type: application/json;charset:utf-8;

    Content-Type的种类繁多,具体可参考http://tool.oschina.net/commons

    3、下面几种类型是很常用,需要记忆的:

    application/x-www-form-urlencoded

    这种类型用于当HTTP将请求参数用key1=val1&key2=val2的方式组织,key 和 val 都进行了 URL 转码,放到body中(如put方法,多用于表单的提交)。注意如果是中文或者特殊字符,会自动进行URL的转码。

    • 如请求参数:

    •  生成的HTTP请求报文:可以看见中文是乱码的,如果没有指定UTF-8输出,应该会进行转义。

    application/json

    JSON 是一种轻量级的数据格式,以“key-value”对的方式组织的数据。这个使用这个类型,需要参数本身就是json格式的数据,参数会被直接放到请求实体里,不进行任何处理。服务端/客户端会按json格式解析数据(约定好的情况下)

    get请求下会将key-value解析出来,放到URL的参数里面。JSON 格式支持比键值对复杂得多的结构化数据,这一点也很有用。

    • 请求消息

    •  生成的HTTP 请求报文
  • 相关阅读:
    【dp专题1】hdu1003 D
    #网络之宙斯盾航母#-----占位--------linux
    面向过程6-----#过程之王#----占个位-----汇编语言----(面向机器)
    面向过程5----c#
    高级语言学习总结
    js实现求二元一次方程的根
    小知识点总结
    js小案例,判断年龄是否成年
    js实现结婚吧小案例
    面向过程4-----perl
  • 原文地址:https://www.cnblogs.com/fish-101/p/10842977.html
Copyright © 2020-2023  润新知