浏览器控制台中点开API,查看前端传递参数payload的展现形式
1、Query String Params
参数来源于url上,多为get方式的API
2、Request Payload(json类型参数)
这种是前后端约定好,json序列化,作为请求体,发送的post请求
需要前端的处理:
前端设置请求头--
Content-Type: application/json
json序列化(js数据变成json格式的数据)--
JSON.stringfy(obj) eg:
{"key":"value", "key": "value"} //json中的属性都是用双引号引起来的
3、Form Data(form类型参数)
这种也是前后端约定好的一种参数传递方式
需要前端处理:
前端设置请求头--
Content-Type: application/x-www-url-encode
参数序列化--
qs.stringfy(obj) eg:
key=value&key=value
总结:
如果API是post方式,前后端一定要提前约定好,如果前端传递的是json类型参数,后端是去解析的json; 如果前端传递的是form类型的参数,后端就需要去分割字符串解析
一、API用get和post方式传递数据的模拟方式
1、get可以直接通过浏览器模拟,因为url上可以直接带参数
2、post要通过postman模拟,并且附带Content-Type等相关请求头的设置
二、post提交数据时,有四中常见的数据格式
application/x-www-form-urlencoded(表单类型的数据)
application/json
multipart/form-data(表单类型的数据)
text/xml
multipart/form-data多用于表单上传文件时,eg:
<form action="/" method="post" enctype="multipart/form-data"></form>