Android开发之基础-------------Get请求和Post请求

Flutter Dio 封装方案,简化 Android 开发 Dio 是一个功能强大的 Flutter HTTP 客户端库,它提供了丰富的功能和灵活的 API,使得网络请求变得更加容易。然而,在实际开发中,我们可能会发现一些常用的网络请求功能需要重复编写,这样就会导致代码冗余。为了简化开发流程,我们可以对 Dio 进行封装,以便复用和简化网络请求的代码。当然,根据实际项目需求,您可以根据这个封装方案进行扩展和定制,以满足特定的业务需求。在该方法中,您可以根据实际需求编写自定义的异常处理逻辑,例如打印日志或进行统一错误处理。在上面的示例中,我们创建了一个。 阅读详情

向服务器提交请求时,有两种提交方式,下面对这两种提交方式进行简单的整理。

一、get方式 和 post方式 请求服务器的区别:

1. 请求的url地址不同
get:http://kr41m1i4fwt359b:8080/itheima75/servlet/LoginServlet?username=root&pwd=123
post:http://kr41m1i4fwt359b:8080/itheima75/servlet/LoginServlet
2. 请求头不同,post请求多了4个请求头和一个请求内容
Content-Length: 21
Cache-Control: max-age=0
Origin: http://kr41m1i4fwt359b:8080
Content-Type: application/x-www-form-urlencoded

username=root&pwd=123
3. 请求时携带数据大小不同
get:1k
post:理论上无限制

1.get请求实例代码:

String url_str = "http://192.168.20.82:8080/itheima75/servlet/LoginServlet?username="+username+"&pwd="+password;
				try{
					//1.创建url
					URL url = new URL(url_str);
					//2.获取一个UrlConnection
					HttpURLConnection openConnection = (HttpURLConnection) url.openConnection();
					//3.设置参数
					openConnection.setRequestMethod("GET");
					openConnection.setConnectTimeout(10*1000);
					//4.获取状态码,判断
					if(openConnection .getResponseCode() == 200){
						//5.获取流信息,转换字符串
						InputStream inputStream = openConnection.getInputStream();
						String result = StreamUtils.streamToString(inputStream);
						Message msg = Message.obtain();
						msg.obj = result;
						handler.sendMessage(msg);
						//6.关流,关连接
						inputStream.close();
						openConnection.disconnect();
					}

				}catch (Exception e) {
					e.printStackTrace();
				}
2.post请求实例代码:

String url_str = "http://192.168.20.82:8080/itheima75/servlet/LoginServlet";
				try{
					//1.创建url
					URL url = new URL(url_str);
					//2.获取一个UrlConnection
					HttpURLConnection openConnection = (HttpURLConnection) url.openConnection();
					//3.设置参数 ,设置一些请求头
					openConnection.setRequestMethod("POST");
					openConnection.setConnectTimeout(10*1000);
					
					String content = "username="+username+"&pwd="+password;//拼装请求时携带的数据
					openConnection.setRequestProperty("Content-Length", content.length()+"");//设置请求头 field:请求头的key,newValue :请求头的值
					openConnection.setRequestProperty("Cache-Control", "max-age=0");
					openConnection.setRequestProperty("Origin", "http://192.168.20.82:8080");
					openConnection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
					
					//设置当前的UrlConnection可以上传主题内容。
					openConnection.setDoOutput(true);
					//获取UrlConnection的一个写入流将主题内容写入,上传
					openConnection.getOutputStream().write(content.getBytes());
					//4.获取状态码,判断
					if(openConnection .getResponseCode() == 200){
						//5.获取流信息,转换字符串
						InputStream inputStream = openConnection.getInputStream();
						String result = StreamUtils.streamToString(inputStream);
						Message msg = Message.obtain();
						msg.obj = result;
						handler.sendMessage(msg);
						//6.关流,关连接
						inputStream.close();
						openConnection.disconnect();
					}
				}catch (Exception e) {
					e.printStackTrace();
				}



安卓应用网络通信与数据处理实战 HttpUtils是一个封装了HTTP请求的工具类,它简化了网络通信的复杂性,使得开发者可以更加专注于业务逻辑的开发。这个类通常包含多种静态方法,用于处理GET、POST等HTTP请求,并且支持参数的设置、请求头的配置,以及响应数据的解析。它可能使用了如HttpClient等基础类库或者第三方库如VolleyRetrofit作为底层实现。在类结构上,HttpUtils可能具备如下组件:静态方法:用于发送请求和接收响应。请求配置:包括URL、请求方法、请求参数、请求头等。 阅读详情

相关推荐

深入理解Android模拟HTTP请求技术

在数字时代,HTTP协议成为了网络通信的基石。它是超文本传输协议,用于在客户端和服务器之间传输超文本文档。了解HTTP协议对于开发者来说至关重要,无论是从性能优化,还是从安全性角度考虑,都有着深远的影响。在移动应用开发中,网络通信是一个不可或缺的部分。Android平台提供了一套完整的API来处理网络请求,通过这些API我们可以发送HTTP请求来与服务器进行数据交换。要进行网络请求,首先要了解Android的网络权限配置。

weixin_42584586的博客 431

android客户端post,Android向后台发送请求

1.本篇主要实现用Get和Post提交完成登录案例。2.使用Post提交JSON数据。代码使用Get和Post分别实现登录案例移动端NetUtilpublic class NetUtil {/*** 使用GET访问网络** @param username* @param password* @return 服务器返回的结果*/public static String loginOfGet(Stri...

weixin_31054839的博客 864

android 平台 Http ge和post请求工具

简单方便的android 端http get 和post 请求 测试端口数据用

Android入门 发送HTTP的GET和POST请求

Android入门 发送HTTP的GET和POST请求

dtijcfrhb的博客 747

Android中Https请求get和post

Android中Https请求get和post 博客地址:http://blog.youkuaiyun.com/lsf1025995457/article/details/51794377

Android的HttpGetPost请求

简单的HttpGetPost,适合初学者,有post 和get请求的两个方式,试用简单,导入项目只需要修改请求地址就ok了。

Android请求接口Post,Get

1 Post package com.example.myfirstapp; import android.content.Intent; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.Button...

天然玩家的博客 1016

ESP32+ST7789 LCD屏实战:5分钟搞定中文显示与图片渲染(附完整代码)

本文提供了一份详细的ESP32驱动ST7789 LCD屏幕的实战指南。通过清晰的SPI硬件连接说明、ESP-IDF框架下的初始化代码,以及图片渲染与中文字库构建的核心算法,帮助开发者快速实现中文显示与图片渲染功能,并附有完整的代码示例和性能优化技巧。

weixin_29189377的博客 437

Android基础入门教程——7.1.3 Android HTTP请求方式-HttpURLConnection

前面两节我们学习的都是一些概念性的东西,Http的协议以及协议头的一些东东,而本节我们 就要堆码了,而本节学习的是Android为我们提供的Http请求方式之一:HttpURLConnection, 除了这种,还有一种还有一种HttpClient,后者我们会下一节讲!不过前者一旦请求复杂起来,使用起来 非常麻烦,而后者我们Java抓包也经常会用到,是Apache的,毕竟不是谷歌亲儿子,而在4.4版本 Http

Coder-Pig的猪栏 3万+

【小白教程】本地部署VLM-R1模型(使用Docker)

通过Docker本地部署VLM-R1大模型,详细教程。

m0_69855053的博客 2937

遥感图像小白--2--图像分割

遥感图像分割基础入门

Mary的博客 4233

Android网络连接和数据处理简单用法

在Android开发过程中请求和处理来自网络的数据是不可避免,本篇将简单介绍Android如何请求网络数据和处理数据。 Android进行网络请求的方式有很多种,其中比较偏底层的是HttpURLConnection。但由于HttpURLConnection涉及操作复杂,调用函数偏多,因此现在人们更偏向于使用将其封装的第三方网络通信库,而我们今天要介绍的OkHttp就属于众多网络通信库中做的最出色的一个。 ...

m0_60334282的博客 6261

(Linux)DHCP 超级作用域和中继代理(超难受做了超久)

DHCP服务器在192.168.159.0 可以实现分配IP的功能,现在要跨网段分配IP 就需要用到DHCP中继代理。中继代理有两张网卡分别eth0:IP 192.168.159.2 ;eth1: IP:192.168.200.2 。现在要实现192.168.200.0网段的客户机可以获取DHCP服务器的IP。中继代理其实是相当于一个路由器的作用 DHCP服务器的IP地址 :192.168.159...

DJ_joker的博客 2223

android okhttp异步请求使用详解 (2)

我的面试经验分享可能不会去罗列太多的具体题目,因为我依然认为面试经验中最宝贵的不是那一个个具体的题目或者具体的答案,而是结束面试时,那一刻你的感受以及多天之后你的回味~很多人在刚接触这个行业的时候或者是在遇到瓶颈期的时候,总会遇到一些问题,比如学了一段时间感觉没有方向感,不知道该从那里入手去学习,对此我整理了一些资料,需要的可以免费分享给大家在这里小编分享一份自己收录整理上述技术体系图相关的几十套腾讯、头条、阿里、美团等公司的面试题,把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含。

2401_84121935的博客 1221

msfvenom制作windows/linux/android/ios木马

msfvenom选项如下 -p, --payload<payload> 指定 payload(攻击荷载)。如果使用自定义payload,请使用'-'或者stdin指定。 -l, --list [module_typel列出指定模块的所有可用资源。模块类型包括:payloads, encoders, nops, all -n, --nopsled <length>为payload预先指定一个NOP滑动长度。 -f, --format <format>指定输出格式(使

Cwillchris的博客 2732

微信小程序 - 最新详细实现跳转打开第三方网站方法流程及示例代码,在小程序内直接打开H5页面或微信公众号文章后台业务域名配置及下载校验文件上传服务器,嵌入外部网站跳转第三方h5网页(详细配置及代码)

微信小程序,打开第三方网站,放校验文件,怎么配置业务域名,后台配置,怎么打开外部没有关联的网站,小程序直接打开公众号文章,指定页面,跳转第三方url,跳转到外部网站,小程序跳转到任意外部网页,网站链接,跳转到其他网页(外部链接),小程序嵌入外部h5链接,校验文件怎么放到对方服务器上,要跳转到网站没权限放过去,校验文件验证域名,把校验文件放到对面网站,别人的服务器也打不开没权限怎么放呢,勾选不校验合法域名,txt,打不开别人的网页怎么办,真机调试打不开,无法跳转,有什么其他办法不放校验文件吗,别人不可能同意,

🏆 前端领域优质创作者 1万+

Android网络请求框架之Okhttp3.0 详细使用

一.OKhttp介绍 除了Android原生的HttpURLConnection的网络通信之外,还有其他许多优秀的网路通信库,而Okhttp无疑是其中出色的一种。Okhttp是Square公司开发的,Okhttp官网主页是:https://github.com/square/okhttp. 二.Okhttp使用 首先在官网找到最新的Okhttp依赖:我这里最新版是4.9.0 implementation("com.squareup.okhttp3:okhttp:4.9.0") 我们最常用的是get和pos

weixin_43547832的博客 2196

【汇编实战开发笔记】一段汇编代码如何“反编译”成C代码?

介绍了一种由汇编代码得到C代码的方法

一个专注于嵌入式IoT领域的架构师,深耕IoT领域多年,深度掌握IoT领域的相关技术栈,包括但不限于RTOS内核的实现及其移植、硬件驱动移植开发、网络通讯协议开发、编译构建原理及其实现、底层汇编及编译原理、编译优化及代码重构、嵌入式IoT系统的架构设计等。 1万+

《Android 应用开发基础教程》——第九章:网络通信基础(HttpURLConnection 与 OkHttp 实现数据请求)

是不可或缺的功能,比如请求天气数据、获取用户信息、与服务器交互等。第十章:使用 Gson 实现网络 JSON 数据解析与对象映射。调用免费 API(如天气、新闻)并展示在页面上。打开连接,设置请求方式(GET/POST)用 OkHttp 实现一个登录表单功能。支持异步请求、缓存、拦截器。在进行任何网络操作前,在现代 App 中,获取响应流并读取数据。

WenJGo的博客 1276

个人量化系统的策略集合与赚钱之道:全栈深度解析 + 与主流开源框架对比

前三篇把系统的"骨架"拆完了——架构、工程化、部署。本篇回答最关键的问题:一句话:别人的系统是"程序员的系统"(写代码才能加策略),daily_stock_analysis 是"股民的 YAML"(写中文就能加策略)。这个差异决定了它能在多大程度上真的帮你赚钱。如果你用过 、、,加一个策略的流程是: 问题在哪?在 daily_stock_analysis 里,“策略” = 一个文件。每个 YAML 是一个自然语言描述的交易策略,包括: 看到没? ——整个策略就是一段中文,零代码。任何会写字的人都能加新策略

shiter编写程序的艺术 151

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

android volley 回调,Android Volley初探:Volley基本用法

一、什么是Volley?Volley,是谷歌官方于2013年发布的用于Android平台的网络通信库,也即是说它内部封装了HttpURLConnection等常用于网络通信的类。平时我们写网络通信的业务逻辑的时候,通常是一大段一大段的HttpURLConnection的逻辑,这给我们造成了很多麻烦,如可能存在很多重复的代码或者效率过低又或者存在并发问题。而Volley的出现,极大简化了网络通信的业...

weixin_42184237的博客 251

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

Android之Http通信——3.Android HTTP请求方式:HttpURLConnection

3.Android HTTP请求方式之HttpURLConnection引言: 好了,前两节我们已经对HTTP协议进行了学习,相信看完前两节的朋友对HTTP协议相比之前 应该更加熟悉吧,好吧,学了要用,相信很多人都知道Android中HTTP的两种最基本的请求方式 他们分别是:HttpURLConnection和HttpClient,当然了解了最基本的两个后,我们实际开发中 可

Coder-Pig的猪栏 3万+

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

Android开发请求网络方式

大家知道Google支持和发布的Android移动操作系统,主要是为了使其迅速占领移动互联网的市场份额,所谓移动互联网当然也是互联网了,凡是涉及互联网的任何软件任何程序都少不了联网模块的开发,诚然Android联网开发也是我们开发中至关重要的一部分,那么Android是怎么样进行联网操作的呢?这篇博客就简单的介绍一下Android常用的联网方式,包括JDK支持的HttpUrlConnection,

qq_32821227的博客 435

ajax post请求怎么传参_高级前端:详解手写原生Ajax的实现

点击上方“前端印象”,选择“设为星标”第一时间关注技术干货!对于Ajax,肯定很多小伙伴都听过甚至用过了,那么没听过的也不用着急,本文会对Ajax进行讲解,其次,一定还有一些人只用过JQuery封装好了的Ajax却对原生的Ajax并不了解,那么也不用着急,本文从最基本的Ajax开始讲起,然后最后会尽可能得模仿JQuery对其进行封装,让我刚才提到的两类人能对Ajax有进一步的了解。一、什...

weixin_34163588的博客 4913

android http和okhttp,Android - 网络请求之OKHttp3

老婆保佑,代码无BUG目录引用基础用法GETpost使用FormBody传递键值对参数使用RequestBody传递Json或File对象使用MultipartBody同时传递键值对参数和File对象自定义RequestBody实现流的上传设置请求头下载文件封装一.引用compile 'com.squareup.okhttp3:okhttp:3.8.1'二.基础用法GETprivate void ...

weixin_30341571的博客 192
上一篇: Android开发之基础------------------网络编程(一)
下一篇: Android开发之基础----------多媒体图片加载、拍照和摄像(一)
杨鑫校
博客等级 码龄11年 24粉丝 113原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值