get请求
get请求没有body(有的客户端支持,但浏览器一般不支持),蚕食都是放到url里传递的,经过URL编码
post请求
content-type 为 "application/json"
curl -X POST -H"Content-Type:application/json" -d'{"name":"wd"}' localhost:16052/api/v1/overt/test
request.body.read # {"name":"wd"}
content-type为 "application/x-www-form-urlencoded"
表单默认,格式与get一样都是url编码,只是放到body里
curl -X POST -d "name=wd" localhost:16052/api/v1/overt/test
request.body.read #name=wd
content-type为 "multipart/form-data"
多用于文件上传,form需上传文件时设置 form 的 enctyped为"multipart/form-data"
curl -H"Content-Type:multipart/form-data" -F"name=wd" -F"age=44" -F"file1=@/Users/oudong/Desktop/aaa.png" -X POST localhost:4321/post
忽略文件的form内容
rails/grape application/json 和 application/x-www-form-urlencoded及multipart/form-data 的参数都能通过 params[key]的方式 取到,但其他语言/框架 这三种方式 取值方式 不一样;所以与其他语言对接时要注意告知Content-Type