首页
学习
活动
专区
圈层
工具
发布

使用java实现HTTP的GET请求

在前几节我们详细讲解了http协议的相关信息,基于“知行合一”的原则,只有通过具体动手实践才有可能检验知识点被我们真正掌握,本节我们就使用代码实现http的get请求。...使用它的好处在于足够简单,并且它有文件上传功能,于是后面我们还可以用来实现POST请求,接下来我们使用代码模拟客户端向它发送GET请求,首先实现的是http数据包组装和解析功能: 上面给定的类用于负责组装...http请求的方法行,同时将http请求的头部字段和对应信息放入到一个Map中以便对应起来,然后通过get_http_content方法将请求行以及头部字段信息组合成http请求数据包的内容。...接着我们使用该类发送请求数据包: 该类使用HttpEncoder类构造http请求数据包后,调用前面实现的tcp协议将数据包封装起来发送给服务器,一旦收到服务器的返回后解析返回数据内容,获取http返回码...从截图中看到,GET / HTTP/1.1就是程序构造的请求包,HTTP/1.1 200 OK就是服务器返回的应答,从回复看服务器接受了程序发出的请求并正常处理,同时将相关信息返回给程序,程序在接收完所有信息后将接收到的数据打印出来

2.3K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    GET 请求和 POST 请求的区别

    ① get 请求用来从服务器上获取资源;而 post 请求通常是用来向服务器提交数据的; ② get 请求是将表单中的数据按 name=value 的形式,添加到 action 所指向的 URL 后面,...并且两者使用 "?"...的方式连接,而各个变量之间使用 "&" 连接;post 是将表单中的数据放在 HTTP 协议的请求头或消息体中,传递到 action 所指向 URL; ③ get 传输的数据受到 URL 长度的限制(因浏览器不同最大字符长度也有所不同...),而 post 请求则没有这方面的约束; ④ 使用 get 发送请求时,参数会显示在地址栏上,如果这些数据不是敏感数据,那么允许使用 get,但对于敏感数据,还是建议使用 post; ⑤ get 使用...MIME 类型为 application/x-www-form-urlencoded 的 URL 编码(也叫百分号编码)文本格式进行传递参数,保证被传送的参数遵循规范的文本组成,例如:一个空格的编码是

    3.7K30

    GET请求和POST请求的区别

    ,安全性比GET请求高一点,但是也是不安全的; 3.是否被缓存的区别 GET请求可以被缓存,也会保留在浏览器的历史记录中; POST请求一般不会被缓存,也不会保留在浏览器的历史记录中;...通常HTTP请求只适用于不改变服务端数据的请求,比如查询类的请求,因为GET通常是用于获取数据,一般不做更新服务器数据的操作,所以符合HTTP缓存适用于不改变服务器数据的请求的原则,所以说GET请求可以被缓存...4.请求长度的区别: GET请求传递的参数一般显示在地址栏上,由于浏览器对url的长度有限制,所以GET请求发送数据有长度的限制; POST请求一般没有请求长度的限制,因为请求数据在body上;...5.参数类型的区别: GET请求只接受ASCII字符; POST请求没有限制,支持更多的数据类型; 6.其他区别 GET请求刷新浏览器或者回退没有影响;POST请求则会重新请求一遍;...GET请求通常是通过url地址请求;POST请求常见的则是form表单请求; GET请求产生一个TCP数据包;POST请求产生两个TCP数据包; tcp数据包具体就是: 1、GET请求时

    2K10

    -GET和POST请求添加请求参数和请求头【TBK使用】

    我们平常浏览各个网站时,不免有时候就需要填写一些信息,比如注册时,登录时,这些信息一般都是通过GET请求或者POST(敏感信息一般使用POST,数据隐藏,相对来说更安全)请求提交到后台,经过后台的一系列处理...对象构建GET请求对象         HttpGet httpGet = new HttpGet(uriBuilder.build());           /*           * 添加请求头信息...();         // 使用Apache提供的工具类进行转换成字符串         entityStr = EntityUtils.toString(entity, "UTF-8");     ...请求的参数都是拼装到URL后面进行传输的,所以这地方不能直接添加参数,需要组装好一个带参数的URI传递到HttpGet的构造方法中,构造一个带参数的GET请求。...构造带参数的URI使用URIBuilder类。   上面添加请求参数的方法有两种,建议后者,后者操作更加灵活。

    7.8K10

    flutter网络dio框架get请求使用总结

    重要消息 网易云【玩转大前端】配套课程 EDU配套 教程 flutter跨平台开发一点一滴分析系列文章系列文章 在这里了 *** 本文章将讲述 1.使用dio发送基本的get请求 2.使用dio发送get...请求的传参方式 3.解析响应json数据 1 引言 dio用来在flutter跨平台开发中访问网络的框架,在使用的时候,我们首先是引入依赖 dependencies: dio: 3.0.9 也可以访问国内...get请求 2.1 Dio get 请求无参数 //get请求无参数 void getRequestFunction1() async { ///创建Dio对象 Dio dio..." } 断点调试如下 [在这里插入图片描述] 2.2 Dio get 请求有参数 ///get请求有参数 ///根据用户ID来获取用户信息 void getRequestFunction2..." } 断点调试 [在这里插入图片描述] 3 json数据解析 对于这里使用到的数据模型 UserBean 对象来说 class UserBean{ String userName; String

    2.1K11

    Java Web Service Get请求使用指南

    Java Web Service Get请求使用指南在当今互联网时代,Web Service已经成为了现代软件开发中不可或缺的一部分。...而Java作为一种广泛使用的编程语言,自然也提供了丰富的工具和库来支持Web Service的开发。本文将为大家介绍如何使用Java编程语言进行Web Service的Get请求。...它使用标准化的XML消息格式进行数据交换,可以在不同的平台和技术之间进行互操作。而Get请求是Web Service中最常见的一种请求方式,它用于从服务器获取数据。...在Java中,我们可以使用Java的标准库来发送Get请求并获取数据。...但是核心思想是一样的,即通过创建URLConnection对象来发送请求,并获取响应。通过以上的介绍,相信大家对于Java中如何使用Get请求来获取Web Service数据有了一定的了解。

    68810

    javaServlet的get和post请求

    请求和post请求 浏览器需要和服务端进行交互,而交互就需要用到get或者post请求,但如何运用get和post请求?...(url、method) url:请求地址 method:请求方式 请求头:cookie、请求参数【GET】 空白行:包含其他数据 请求体:请求参数【POST】 等于说,在浏览器发起请求后,...Get和Post请求,在协议包中分别将数据存储于请求头和请求体中 http响应协议包 与请求协议包一样,也可以看作是一种容器,只不过这个容器是服务端向浏览器发起的一个返回信息 此容器中包括:...Servlet在服务端中可以看作是一个java类,但它几乎不用main这个主函数,通常使用都是doGet或者doPost这两个方法 这两个方式,都会有对应的请求对象和响应对象,在浏览器选择好对应servlet...的路径,浏览器的请求就会发送至对应路径的Servlet中,Servlet会区分浏览器的请求方式是get还是post,如果是get,那么Servlet执行的方式是doGet,post请求则反之。

    13610

    java中get请求和post请求的区别

    在Java中,GET请求和POST请求是HTTP协议中两种常见的请求方法,它们在使用方式和传递参数的方式上有一些区别: 请求方式: GET请求: 使用URL来传递参数,参数附在URL的后面,通过?...GET请求通常用于获取数据,对服务器的请求是幂等的,即多次请求的结果相同。 POST请求: 参数是通过请求体传递的,不会附加在URL上。...POST请求通常用于提交数据,对服务器的请求可能产生副作用,不一定是幂等的。 // GET请求示例 String url = "https://example.com/api/resource?...请求: 数据通过URL参数传递,对于一些敏感信息,不适合使用GET请求,因为参数会出现在URL中,可能被他人获取。...请求: 数据量通常受到URL长度的限制,浏览器和服务器对URL长度都有限制。

    1.6K10

    get和post请求的区别

    网上也有文章说:get和post请求实际上是没有区别,大家可以自行查询相关文章(参考文章:https://www.cnblogs.com/logsharing/p/8448446.html,知乎对应的问题链接...①get请求用来从服务器上获得资源,而post是用来向服务器提交数据; ②get将表单中数据按照name=value的形式,添加到action 所指向的URL 后面,并且两者使用"?"...连接,而各个变量之间使用"&"连接;post是将表单中的数据放在HTTP协议的请求头或消息体中,传递到action所指向URL; ③get传输的数据要受到URL长度限制(最大长度是 2048 个字符);...而post可以传输大量的数据,上传文件通常要使用post方式; ④使用get时参数会显示在地址栏上,如果这些数据不是敏感数据,那么可以使用get;对于敏感数据还是应用使用post; ⑤get使用MIME...如果服务器返回301或者302,则浏览器会到新的网址重新请求该资源。

    1.8K10

    Flask 使用 request 处理GET POST请求、上传文件

    在Django框架开发中,request对象就是用来处理GET\POST请求的关键对象,而Flask框架也是一样的。 下面来看看request对象的常用方法。...那么这个HTTP请求中可能会是GET\POST请求,以及还要考虑如何获取各种请求体或者URL参数。 而对应着这些参数的获取或者GET/POST方法的区分,下面都有对应的常用方法来进行对应的处理。...常用的方法如下: ? 如果是json格式的请求数据,则是采用request.data来获取请求体的字符串。 如果是form表单的请求体,那么则可以使用request.form来获取参数。...param1=xx¶m2=xx,那么则可以使用request.args来获取参数。 如果需要区分GET\POST请求方法,则可以使用request.method来进行判断区分。...,user_age) if __name__ == '__main__': app.run(debug=True) 一般form表单的请求都是使用post请求,下面可以使用postman来进行请求模拟

    12.8K20

    postman系列(二):使用postman发送get or post请求

    总结一下如何使用postman发送get或post请求。 请求(Request) 「GET 请 求」 通常用于请求服务器发送某个资源,请求的数据会附在URL之后,以?...请求方法选择GET ; 2. 在request url处输入请求url; 3....「POST请 求」 POST方法一般用来向服务器输入数据,它把提交的数据放置在是HTTP包的包体中 1.请求方法选择POST; 2.在request url处输入请求url; 3.请求方法选为POST后...,可以是200,也可以定义为其它值,是为了让接口使用者去区分正常数据与异常数据。...突出显示Pretry模式中的链接,点击它们,可以通过链接URL在Postman中加载GET请求。为了浏览较大的响应报文,可以单击左侧的向下指向的三角形(▼)折叠响应报文。

    8.5K31

    为什么 HTTP GET 方法不使用请求体?

    本指南将揭示为什么 HTTP GET 方法不像其他 HTTP 方法那样使用请求体,以及如何在 API 开发中有效地使用 GET 请求。...然而,作为 HTTP 操作的基石,GET 方法却偏离了这一常规。本指南将深入探讨为什么 HTTP GET 请求通常不使用请求体,GET 方法的主要用途,以及如何有效地发送 GET 请求。...将请求体附加到 GET 请求上违背了 GET 用于安全检索数据而不修改服务器资源的原则。为什么 HTTP GET 请求不使用请求体?为什么 GET 方法不使用请求体呢?...如果请求体中包含敏感信息,会存在安全风险。例外情况:在 GET 方法中使用 HTTP 请求体尽管很少见,但在某些情况下,可以在 GET 请求中使用请求体。...总结:自信地掌握 HTTP GET 请求总之,尽管由于多种实际原因,HTTP GET 方法通常不使用请求体,但了解其正确使用方法对于有效的 API 开发至关重要。

    59810

    http请求get与post的区别

    http请求get与post的区别 get与post是http请求的两个标准请求方式,也是使用最多的两种方式 他们最直接的区别就是get请求将数据放在url中传输,而post请求是将数据放在request...body中传输 get方式传输数据,数据不安全,post相对安全 然而get和post在本质上是没有区别的 get和post都是http协议中的两种发送请求的方法 什么是http请求?...http是基于TCP/IP的关于数据如何在万维网中如何通信的协议。 http的底层是TCP/IP,所以get和post请求的底层也是TCP/IP,也就是说get和post都是TCP链接。...还有一个最重要的区别就是get请求只会发起一次请求,而post请求会发起两次请求,第一次会告诉服务器“嘿,老兄一会给你发个东西”, 服务器收到第一次的请求后,做出回应,随后第二次请求才会发送数据

    2K10
    领券