【java】form data 和request payload 和Query String Parameters的区别?

求解释一下form data 和request payload 和Query String Parameters的区别,使用post还是get请求发出的,content-type怎么设置之类的

回答

URL 的格式如下:
scheme://user:[email protected]:port/path;params?query#frag

query 部分就是 Query String Parameters

HTTP 的请求报文格式如下

<method>  <request-URL>  <version>

<header>

<entity-body>

request payloadform data 都是 entity-body 块的内容,只是由 Content-type 区分解析行为。
一般 form-data`Content-type=application/x-www-form-urlencoded
其余的一般都默认是 request payload (文件上传不知道算不算,有兴趣可以自行搜索一下)。

Query String Parameters 无论什么请求方式都可以带,取决于自己要不要解析。
entity-body 则是要部分请求方式
POSTPUTPATCHDELETEOPTIONS(UN)LINKLOCKPROPFINDVIEW
之类的都可以带 body

Demo: http://wfquery.top/demo/07.fo...

  • formdata 当使用FormData提交 POST 请求数据时(可以提交blob数据, 也就是支持文件上传), 默认提交 数据在request.plaload

$.ajax({

type: 'POST',

url: '/',

form: $('form')

});

【java】form data 和request payload 和Query String Parameters的区别?
https://github.com/shy2850/wf...

  • 使用GET请求时,数据一般是querystring

【java】form data 和request payload 和Query String Parameters的区别?

【java】form data 和request payload 和Query String Parameters的区别?

  • 如果你使用POST提交querystring,需要设置 Content-Type: 'application/x-www-form-urlencoded', 数据通过 xhr.send(data)提交

https://github.com/shy2850/wf...

  • 以上,算是比较常用的表单数据提交方式, 你还可以直接提交json格式字符串之类的,服务端通过获取整个query去parseJSON, 文件上传的时候 xhr.send(buffer) 也可以直接提交buffer。

事实上前端是不是需要设置请求头的 “Content-Type” 完全由服务端决定的,以上不管是 querystring-param 还是 query-json 格式都可以在同等位置提交,所以很多时候我们前后端协议约定这个需要设置一下 格式交互规范,你在项目里也可以不遵循这个约定,自己定义规则。

以上是 【java】form data 和request payload 和Query String Parameters的区别? 的全部内容, 来源链接: utcz.com/a/74146.html

回到顶部