HTTP入门 请求方法

136 阅读1分钟

请求行

Get/HTTP/1.1 
Get   获取  ?wd=xxx HTTP/1.1
Post  传
请求  路径+查询参数 协议名/版本

请求头

Host:localhost:8888
Host:域名或IP

Accept:text/html
Accept:text/html,app;ication/xhtml+xml
告诉服务器我要接受什么格式的文本,首选是html

Content-Type: text/html;charset=utf-8
Content-Type:请求体的格式(文件,图片,文本)

请求体
也就是上传内容,和请求体的格式对应,(文件,图片,文本)

响应状态行

协议名/版本 状态码 状态字符串

响应头

Content-Type:响应体的格式

响应体

响应体(也就是下载内容)

用curl命令构造请求

curl -v http://127.0.0.1:8888

设置请求动词

GET       默认
-X POST 
curl -v -X POST http://127.0.0.1:8888

设置路径和查询参数

curl -v http://127.0.0.1:8888?wd=哈士奇

设置请求头

-H'Name:Value'
-header'Name:Value'
curl -v -X POST -H 'Accept : text/html' http://127.0.0.1:8888

设置请求体

-d'内容'
--data'内容'

curl -v -X POST -H 'Accept : text/html' -H 'Content-text/plain;charset=utf-8'
-d '请求体内容' http://127.0.0.1:8888

用Node.js 读取请求

读取请求动词
request,method
Console.log("method:post/get");

Console.log("有个帅哥发请求了,路径(带查询参数)为:"+pathwithQuery)
Console.log(request.headers)拿到所有的请求头

读取路径

request.url         路径带查询参数
path                纯路径
query               只有查询参数

读取请求头

request.headers['Accept']

设置响应状态码

状态响应码
response.statusCode = 200
response.SetHeader("Content-Type","text/html;charset=utf-8");

设置响应体

response.write('内容')

详细资料点击:HTTP Headers