当前位置: 首页 > news >正文

网站服务器证书有问题/长尾关键词挖掘精灵官网

网站服务器证书有问题,长尾关键词挖掘精灵官网,帮做软件测试的网站,郑州经济技术开发区协同办公系统http报文格式 知识点了解:之前已写到过,http报文格式如下: 报文首部(第一行为请求方法 请求uri http版本 或者http版本 响应状态码) 空行 报文主体(就是请求体body) 有了上述概念之后就可以实现…

http报文格式

知识点了解:之前已写到过,http报文格式如下:


报文首部(第一行为请求方法 请求uri http版本 或者http版本 响应状态码)
空行
报文主体(就是请求体body)


有了上述概念之后就可以实现自己来解析http报文了。

首部字段类型

General Header Fields
Request Header Fields(发送http请求时用到)
Response Header Fields (响应http报文中用到)
Entity Header Fields

http/1.1中规定了47种首部字段,不需要都记住,了解然后知道去查就ok了。

通用首部字段作用
Date报文创建的时间
Via代理信息
Upgrade升级为其他协议
Cache-Control控制缓存行为

其他请求,响应中用到了更丰富的字段,http/1.1官方解读查询。
除此之外,在开发过程中可以进行header的自定义。

现在进入正题,解析http报文,java代码如下

package HTTPParser;import HTTPParser.httpMsgParser.HttpMsgParser;import java.util.Arrays;
import java.util.HashMap;
import java.util.Map;/*** @author liubh* @date 2020/1/2 16:58* @email*/
public class HTTPReceivedMsg implements HttpMsgParser<HTTPReceivedMsg> {private String httpMsg;private Map HeaderMsg;private byte[] requestBody;public String getHttpMsg() {return httpMsg;}public void setHttpMsg(String httpMsg) {this.httpMsg = httpMsg;}public Map getHeaderMsg() {return HeaderMsg;}public void setHeaderMsg(Map headerMsg) {HeaderMsg = headerMsg;}public byte[] getRequestBody() {return requestBody;}public void setRequestBody(byte[] requestBody) {this.requestBody = requestBody;}@Overridepublic String toString() {return "HTTPReceivedMsg{" +"httpMsg='" + httpMsg + '\'' +", HeaderMsg=" + HeaderMsg +", requestBody=" + Arrays.toString(requestBody) +'}';}@Overridepublic HTTPReceivedMsg parse(String message) {HTTPReceivedMsg httpReceivedMsg = new HTTPReceivedMsg();String[] split = message.split("\r\n\r\n");HashMap hashMap = new HashMap();if (split.length == 1){String[] split1 = split[0].split("\r\n");httpReceivedMsg.setHttpMsg(split1[0]);for (int i = 1; i < split1.length;i++){String[] split2 = split1[i].split("\\:");hashMap.put(split2[0],split2[1]);}}if (split.length == 2){String[] split1 = split[0].split("\r\n");httpReceivedMsg.setHttpMsg(split1[0]);for (int i = 1; i < split1.length;i++){String[] split2 = split1[i].split("\\:");hashMap.put(split2[0],split2[1]);}httpReceivedMsg.setRequestBody(split[1].getBytes());}httpReceivedMsg.setHeaderMsg(hashMap);return httpReceivedMsg;}
}

按照http报文的三个部分,首部字段和主体进行分开,首部字段前http版本行单独抽出,这样就完成了http报文解析。

实现结果如下:

POST /hello HTTP/1.1
Content-Type: application/json
User-Agent: PostmanRuntime/7.20.1
Accept: */*
Cache-Control: no-cache
Postman-Token: 23a045e5-736e-49b8-8ddd-87b1af2787e7
Host: localhost:9000
Accept-Encoding: gzip, deflate
Content-Length: 73
Connection: keep-alive{"MntNo":"ddd","ign":"fffff","pagex":"1","paze":"20","sech":"s","st":"d"}
*********************************************************************
HTTPReceivedMsg{httpMsg='POST /hello HTTP/1.1', HeaderMsg={Accept= */*, Cache-Control= no-cache, User-Agent= PostmanRuntime/7.20.1, Connection= keep-alive, Postman-Token= 23a045e5-736e-49b8-8ddd-87b1af2787e7, Host= localhost, Accept-Encoding= gzip, deflate, Content-Length= 73, Content-Type= application/json}, requestBody=[123, 34, 77, 110, 116, 78, 111, 34, 58, 34, 100, 100, 100, 34, 44, 34, 105, 103, 110, 34, 58, 34, 102, 102, 102, 102, 102, 34, 44, 34, 112, 97, 103, 101, 120, 34, 58, 34, 49, 34, 44, 34, 112, 97, 122, 101, 34, 58, 34, 50, 48, 34, 44, 34, 115, 101, 99, 104, 34, 58, 34, 115, 34, 44, 34, 115, 116, 34, 58, 34, 100, 34, 125]}

解析前报文主体是一串json,我用了一个byte[]进行接受

这就实现了一个简单的http报文的解析

http://www.lbrq.cn/news/1111159.html

相关文章:

  • 密云区建设委员会官方网站/百度网址大全电脑版旧版本
  • 女人网上量体做衣网站/建立网站的步骤
  • 什么是静态网页和动态网页/手机优化是什么意思
  • 网站建设后台有哪些东西/百度推广代理商加盟
  • 网站做app的软件叫什么/要怎么网络做推广
  • 网站锚文本怎么做/系统优化的方法
  • 学校网站手机站的建设方案/苏州seo关键词优化排名
  • 杭州网站做的好公司名称/seo技术软件
  • 绍兴网站快速排名优化/免费制作网页的网站
  • 南京怎样做网站/湖南发展最新消息公告
  • 做花馍网站/高级seo课程
  • 郑州住房和城乡建设厅网站/百度网址收录入口
  • 做企业规划的网站/百度推广怎么优化
  • 做网站涉及到哪些/seo关键词推广案例
  • 免费网站网络推广/深圳谷歌优化seo
  • 中国建设银行网站用户/查询关键词排名工具
  • 跨境电商工具类产品的网站/江苏企业网站建设
  • 阿里云云服务器ecs做网站访问慢/网络营销策略案例
  • 网站基本建设是什么/怎么创建一个自己的网站
  • 龙岗做商城网站建设/网站优化助手
  • 先进的网站建设/最近最新新闻
  • 韩国在中国做美食的视频网站/河北seo关键词排名优化
  • 品牌网站建设优化公司哪家好/网络营销管理
  • 网站备案多久做一次/北京seo外包 靠谱
  • 企业建设网站公司/seo一键优化
  • wordpress建手机站教程/阿里巴巴seo排名优化
  • 做网站要注意什么/成都谷歌seo
  • 装饰工程/厦门谷歌seo公司有哪些
  • 漳州最具口碑的网站建设/怎么提高百度搜索排名
  • 牛仔裤网站设计/百度开户流程
  • 目标框的位置以及大小的分布
  • 推荐 1 款 4.5k stars 的AI 大模型驱动的开源知识库搭建系统
  • Spring全面讲解(无比详细)
  • AWS SSL证书无缝迁移完整指南 - 零业务中断方案
  • 快速了解网络爬虫
  • 高光谱相机有多少种类型?分别有什么特点?