首页 > 编程知识 正文

js请求get,java获取get请求参数

时间:2023-05-06 12:03:22 阅读:164171 作者:3

前一节详细介绍了http协议的相关信息,基于“知行合一”的原则,只有通过具体实践才能验证知识点是否真正掌握。 在本节中,使用代码实现http的get请求。

首先需要http服务器。 基于简单的原则,我使用了手机上的福昕pdf阅读器iPhone版。 和Android版一样,它本身附有小型的http服务器,用于从电脑向手机传输文档。 打开此APP,从菜单中选择Wi-Fi,然后单击“允许文件传输”以启动http服务器。 然后在浏览器中键入http://192.168.2.127:8888。 其中,192.168.2.127是我的手机ip,也支持http服务器的ip。 8888是服务器接收请求的端口,输入URL并单击该端口,浏览器将接收请求的响应并显示:

使用它的优点是十分简单,具有文件上载功能,以后也可以用于实现POST请求。 然后使用代码模拟客户端发送GET请求。 首先,实现http数据包的组装和分析功能。

上面的类负责组装http请求的方法行,将http请求的标头字段和对应信息放在映射中进行映射,然后使用get_http_content方法将请求行和标头字段信息组合到http请求包的内容中。 该类还解密从服务器返回的http数据,确认返回码为200,即,确认服务器正常处理来自我们的http请求的同时,从Content-Length字段返回的数据

然后,使用此类发送请求包。

该类在使用HttpEncoder类构建http请求分组后,调用之前实现的tcp协议将分组封装并发送到服务器,接收到来自服务器的回复后解析回复数据的内容,获得http回复码,并回复

然后,函数recv_notify按顺序接收从服务器发送来的数据信息,并在每次接收信息时计算接收的总数据长度是否与从服务器返回的Content-Length字段中指定的长度相匹配。 接收到所有匹配说明信息后,程序将打印接收到的信息并关闭tcp连接。 执行上面的代码后,wireshark中的数据包如下所示。

从截图可以看出,GET/HTTP/1.1是程序结构的请求数据包,HTTP/1.1 200 OK是服务器返回的应答,在服务器接收到来自程序的请求并正常处理的同时,将相关信息编程程序在接收到所有信息后,打印接收到的数据。 结果如下。

从截图中可以看出,程序正确接收了服务器返回的html页面信息,我们的代码实现逻辑基本正确。

更多精彩内容请点击“原文”阅读

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。