Android请求WebService保存用户登录Session

Delphi XE12实战指南:从环境搭建到避坑进阶全解析 在企业级桌面应用与遗留系统维护中,Object Pascal及Delphi依然是不可忽视的技术栈。Delphi XE12作为Embarcadero的集大成版本,通过编译器重构与RTL/VCL现代化,提升了跨平台编译、高DPI支持及与新版Windows的兼容性。RAD开发环境下,VCL组件拖拽与对象检查器配合,降低了桌面应用开发门槛。在实际工程中,开发者常需解决SQLite中文乱码、EdgeBrowser导航异常、HTTPS证书校验失败等经典问题,同时可借助FireDAC统一数据库访问、TNetHTTPCli 阅读详情

在请求WebService过程中有时需要保存用户的登录信息,在web中都会自动产生一个对应的session,但android中需要自己获取session并保存,再次请求的时候带上保存的session,否则有时会获取不到已登录时的数据,此处网络请求我采用的是HttpGet,下面是登录时保存session的方法

private static final int REQUEST_TIMEOUT = 30*1000;//设置请求超时10秒钟  
private static final int WAIT_TIMEOUT = 30*1000;  //设置等待数据超时时间10秒钟 
public static String getLogin(String name, String pwd){
		String url = SERVICE_URL+ "Login" + "&UserName=" + name + "&UserPwd=" + pwd;
		try {
			HttpGet httpGet = new HttpGet(url);
			DefaultHttpClient httpClient=getThreadSafeClient();
			HttpResponse response = httpClient.execute(httpGet);
			if (response.getStatusLine().getStatusCode() == 200) {
				HttpEntity entity = response.getEntity();
				result = EntityUtils.toString(entity, HTTP.UTF_8);
			}
			//获得Cookie
			List<Cookie> cookies = httpClient.getCookieStore().getCookies(); 
			if (!cookies.isEmpty()) { 
			    for (int i = 0; i < cookies.size(); i++) { 
			    	Cookie cookie = cookies.get(i); 
			        cookieString = cookie.getName() + "=" + cookie.getValue() + ";domain=" + 
			        cookie.getDomain();
			    } 
			} 
		} catch (ClientProtocolException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (ParseException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return result;
}
/**
* ThreadSafeClient
* or Invalid use of SingleClientConnManager: 
* connection still allocated
* @return
*/
public static DefaultHttpClient getThreadSafeClient()  {

	DefaultHttpClient client = new DefaultHttpClient();
	ClientConnectionManager manager = client.getConnectionManager();
	HttpParams params = client.getParams();
	HttpConnectionParams.setConnectionTimeout(params, REQUEST_TIMEOUT);  
	HttpConnectionParams.setSoTimeout(params, SO_TIMEOUT);
	client = new DefaultHttpClient(new ThreadSafeClientConnManager(params, 
	    		manager.getSchemeRegistry()), params);
	   return client;
}
此处注意下次传递的是cookieString,注意格式,下面是再次请求是带上Cookie的方法,只需要传递请求的url就可以了

private static String doHttpGet(String url){
		String get_result = "";
		try {
			HttpGet httpGet = new HttpGet(url);
			//设置Cookie
			httpGet.setHeader("Cookie", cookieString);
			HttpResponse response = httpClient.execute(httpGet);
			if (response.getStatusLine().getStatusCode() == 200) {
				HttpEntity entity = response.getEntity();
				get_result = EntityUtils.toString(entity, HTTP.UTF_8);
			}
		} catch (ClientProtocolException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (ParseException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return get_result;
	}
仿美团外卖小程序前后端代码实战:从环境搭建到订单链路二次开发 前后端分离是当前企业级应用的主流架构,它将页面渲染与数据逻辑解耦,通过HTTP接口协同工作。微信小程序作为轻量级前端载体,配合Spring Boot后端服务,能够快速构建完整的业务闭环。本文以外卖小程序为例,从环境准备、数据库设计、接口联调,到订单状态流转、购物车结算、权限控制等核心链路,系统讲解如何将一个真实项目从源码跑通到二次开发。同时总结了端口冲突、数据库时区、Redis未启动、非法域名校验等高频踩坑点,帮助开发者少走弯路。文章适合具备基础Web知识、想通过实战项目提升工程能力的读者。 阅读详情

相关推荐

VirtualBox安装Win10虚拟机超详细教程(附微软官方镜像下载)

本文提供了一份详细的VirtualBox安装Win10虚拟机教程,涵盖从环境准备、工具下载到系统安装与初始配置的全过程。特别推荐使用微软官方镜像下载,确保系统纯净安全。此外,还分享了性能优化技巧和常见问题解决方案,帮助用户高效搭建稳定的Windows测试环境。

weixin_29243279的博客 918

Android-用户登陆的例子(服务器端开发到客户端实现)

Android-用户登陆的例子(服务器端开发到客户端实现) 1.回顾        上篇实现总结了App接口开发课程讲解的内容 2.此篇      这篇将总结app接口开发里的 用户登录的例子! 3.基本步骤     (1)服务端实现 登陆接口 开发     (2)实现 json 和xml数据封装类     (3)编写 接口开发文档     (4)实现

码农小战士的博客 1016

手把手教你用OPA运放和MOS管搭建恒流源电路(附完整电路图)

本文详细介绍了如何使用OPA运放和MOS管搭建高精度恒流源电路,涵盖核心元器件选型、电路设计、工作原理及实际搭建步骤。通过负反馈控制机制和MOS管工作区设置技巧,实现稳定的电流输出,适用于LED驱动、电池充电等场景。附完整电路图和调试技巧,助您快速掌握恒流源设计。

weixin_29239279的博客 535

Android实现服务器登录

Android实现服务器登录 一、使用MyEclipse创建一个servlet service project服务;( 在创建服务器时一定要创建servlet service project,不能创建servlet project)代码如下: package login; import java.io.IOException; import java.io.PrintWriter; ...

Alan_TW的博客 2588

Verilog数字钟

使用Verilog语言进行的数字钟的编写,FPGA开发板亲测正常 大学生一个,第一次自己做的东西,写出来分享在这里插入代码片一下,有不对的地方请大家批评指正。 这次的做的题是:设计一个数字钟,该数字钟能进行正常的时,分计时功能,且能对数字钟的时间进行调整。 该数字钟有3个按键,按键1为功能键,用于数字钟在“正常计时”,“时调整”,“分调整”这三个功能之间切换;按键2,3用于调整时间,仅当数字钟处于...

bin_bin_bun的博客 6149

从大疆智图到Cesium:3D Tiles模型加载与Web三维场景构建实战

本文详细介绍了如何利用大疆智图生成3D Tiles数据,并通过Cesium在Web端实现高效加载与三维场景构建。从大疆智图参数设置到Cesium环境配置,再到3D Tiles性能调优与高级功能实现,提供了一套完整的实战指南,帮助开发者快速掌握3D Tiles模型加载与Web三维场景构建技术。

weixin_30520015的博客 1285

Android与服务器数据交互实现用户登录

1.数据库设计 表名:user 2.服务器端设计 1.新建Web Project 2.项目结构图如下: 3.项目代码 LogLet.java @WebServlet("/LogLet") public class LogLet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServlet...

MasssA 7340

一个响应ping包延迟偏大的问题

前段时间客户反馈一个使用pc上的命令行ping无线设备(WiFi4)时,设备平均响应时间(测试时长2小时,1秒Ping一次)相比其它机型偏慢的问题,并上传上具体的时间的Log.从log中看到,大多数包的响应还是比较快的,只是个别响应时间较长,且响应时间长的包时间几乎都是一样的100多ms.如下是部分响应时间截图. 整个2小时的测试时间里,总是时不时的出这么上102,104ms的响应时间,这直接导致了平均响应时间被拉大.于是本地测试,也发现了类似的延迟.本地测试时,现象略有...

流风回雪的博客 1万+

android的登入功能,Android登陆界面用户名检测功能

今天分享一下登陆界面用户登录名的检测,大家都知道如果在服务器端进行所有用户名的检测是比较浪费资源的。用户每点击一次登陆就要发到服务端去检测,对于服务端来说负荷是比较大的。所以呢在客服端对用户的非法信息进行简单的过滤是非常有必要的。首先看一下效果:当用户输入的用户名长度小于3,或者大于9时将出现红色提示,并且登陆按钮不可点击。当输入的用户名大在合法区间则提示消失,如果密码不为空则登陆按钮可点击虽然...

weixin_35451402的博客 649

出个AI8051U的PWM例程 | 3相互补SPWM变频驱动,PWMA-3个相位差120度的PWM互补输出

通道2输出: P2.2, PWMA2P输出, P2.3, PWMA2N输出, PWMA2相对PWMA1滞后120度相位.通道3输出: P2.4, PWMA3P输出, P2.5, PWMA3N输出, PWMA3相对PWMA1滞后240度相位.先别修改程序, 直接下载"Objects"里的"pwm.hex"测试, 下载时选择主频24MHz.主频32.768MHz, PWM周期1422, 刷新频率23040Hz,死区0.5us,通道1输出: P2.0, PWMA1P输出, P2.1, PWMA1N输出。

USB_CAN_8051的博客 690

2.1 直流无刷电机(BLDC):机械结构与组件

本文详细解析了直流无刷电机(BLDC)的机械结构与核心组件。BLDC电机通过电子换向取代传统机械电刷,主要包含定子、转子、位置传感器和电子换向器四大组件。定子采用硅钢片叠压结构,配有三相绕组;转子采用永磁体材料,结构设计影响转矩特性;位置传感器(霍尔、编码器、旋转变压器)实现精准换向;电子换向器通过功率逆变拓扑完成电流控制。文章还对比了不同绕组类型、永磁材料及传感器技术的性能特点,为BLDC电机的设计与应用提供了理论基础。

技术工作者 388

Android 丨 Service与Activity的信息交互

Android中信息交互大致有两种方式: 1.使用intent在service和activity之间不停地传递信息 2.使用bindService实现,这里有两种实现方式,在重写service当中的onBind方法是,一种方式是通过实现一个Binder接口,通过在这个接口中的实现一个getService方法返回service.this实现,另一种方法是使用aidl这种接口

听说android还不错。。 638

Higress 入门:初探阿里云原生 AI 网关

Higress 是一款由阿里巴巴推出的云原生 API 网关,其内核基于 Istio 和 Envoy。与传统 API 网关不同,它深度聚焦于 AI 场景,支持国内外众多主流模型供应商,如 OpenAI、百度文心一言等,还兼容基于 vllm/ollama 等自建的 DeepSeek 模型,能够满足不同类型企业对 AI 能力集成与管理的需求。Higress 作为一款功能强大的云原生 API 网关,在 AI 时代展现出独特的优势。

加入“Super Entity”,与全能开发团队共探AI智能体与数字人项目,开启前沿技术之旅。 1865

五、WebService会话Session的管理

1、新建Session的WebService测试代码,代码很简单。就是记录用户登录的状态信息,放在MessageContext的ServiceContext中。代码如下: package com.hoo.service; import org.apache.axis2.context.MessageContext; import org.apache.axis2.context.Servi

u010810367的专栏 1032

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

单点登录,与服务器交互,用户Cookie(token)的设计,Cookie与Session的区别

单点登录的cookies Session,Token。 &gt; WebService在 开发中的运用  1. WebService由于采用http协议,而且使用和web服务相同的端口(如80),因此它可以不受防火墙的限制  2. WebService由于采用了XML做传输载体,因此它对所有的编程语言来说都是中性的,也就是说,不同的编程语言可以通过WebService进行通讯  3. 也正因为W...

ShareUs的专栏 1529

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

android获取web服务器端session并验证登陆

传统网页实现用户登陆一般采用session或cookie记录用户基本信息又或者两者结合起来使用。android也可以采用session实现用户登陆验证并记录用户登陆状态时的基本信息,session是在服务器端的;而类似cookie的记录方式,则可以在客户端采用xml文件记录用户基本信息,重要数据则可以加密存放客户端。android实现的session登陆功能与网页请求不同的是,网页形式的一次成功的

4053

pb一步步开发APP

APP越来越流行,客户需要开发APP,对习惯了pb开发者来说,如何开发APP是个让人头大的问题。其实pb开发APP是完全可行的。 下面就通过示例,一步步都大家如何开发一个APP。先上几张最后的效果图       PB开发Http服务 1.建立workspace命名为test, 建立一个application命名为plugin,创建一个全局函数satrda_service,导入n_sat

pcwe2002的专栏 1万+

Retrofit+OKHttp 教你怎么持久化管理Cookie

来源:极客头条 最近小编有点忙啊,项目比较紧,所以一直在忙活项目,继之前的自定义组件之后就没再写博客了,如果你没看到之前的自定义组件你可以看一下:  Android自定义下拉刷新动画–仿百度外卖下拉刷新  Android自定义组合控件—教你如何自定义下拉刷新和左滑删除  效果还行,源码也已经传到我的Github上了。  那么今天小编来给大家分享点什么呢?对,就是它:Retrofi

shengfakun1234的专栏 917

微信小程序商城开发:原生与uniapp选型对比与避坑指南

在移动应用开发领域,跨端框架与原生开发的选型一直是团队与技术决策者关注的核心话题。原生开发依托平台官方技术栈,直接编译运行,性能上限高且新特性支持及时;跨端框架则通过编译转换与运行时适配,实现一套代码多端复用,显著降低多平台项目的开发与维护成本。以微信小程序商城为例,涉及商品、订单、支付、售后等复杂业务链路,技术路线的选择直接影响项目的开发效率、迭代灵活性与长期维护成本。无论是采用微信原生开发,还是基于uniapp等跨端框架搭建商城源码,都需要充分理解其底层逻辑、源码形态与适用场景。本文从概念到原理,再到工

weixin_33834628的博客 335

OpenClaw 2.0 实战适配指南:Kali/容器/Android跨平台部署与风控绕过

OpenClaw 2.0 是一款面向红队与渗透测试的开源微信生态联动工具,其核心能力围绕本地大模型调度、Chrome 自动化控制与微信协议交互展开。随着 Kali Linux 全面转向 Wayland、Docker 容器化普及及 Termux 原生支持增强,该工具的兼容性面临 Python 环境冲突、GGUF v3 格式不支持、Chrome 沙箱权限缺失、微信 session 指纹熵值坍塌等典型问题。技术价值已从‘开箱即用’转向‘可解构组件库’,适用于本地 PoC 验证、CI/CD 红队流水线嵌入及边缘-云

weixin_33755557的博客 268

客户端与服务器通信实战:从HTTP协议到数据交换的完整指南

在软件架构中,客户端-服务器模型是支撑现代应用的核心基础。其工作原理基于请求-响应模式,客户端作为主动发起方,服务器作为被动处理方,通过网络协议进行通信。这一模型的技术价值在于实现了业务逻辑与用户界面的分离,提升了系统的可扩展性与可维护性。在实际应用场景中,无论是Web网站、移动App还是物联网设备,都依赖于客户端与服务器之间稳定、高效的数据交换。本文聚焦于通信过程中的关键环节,深入探讨了HTTP/HTTPS等协议的工作机制,并解析了JSON、Protobuf等数据格式的选用与实战陷阱,其中涉及异步编程、状

weixin_33681778的博客 399

工业物联网安全:从访问控制原理到未授权访问漏洞实战分析

访问控制是网络安全的核心基础,它通过身份验证和授权机制确保只有合法用户才能访问特定资源。其原理通常涉及会话管理、令牌验证或访问控制列表等技术,旨在构建安全的信任边界。在物联网和工业控制系统领域,这一技术的价值尤为突出,直接关系到物理设备的操控安全和生产过程的稳定。然而,当访问控制机制缺失或配置不当时,便会形成严重的未授权访问漏洞,攻击者无需凭证即可直接操作后台系统。本文以一次真实的工业物联网设备安全分析为例,深入探讨了因访问控制列表失效导致的未授权访问漏洞,并关联了Nacos、Redis等组件的类似安全问题

weixin_33801856的博客 446

移动应用协议逆向实战:绕过SSL Pinning与Protobuf解析

在移动应用安全与数据分析领域,网络通信协议解析是理解应用数据流转逻辑的核心技术。其基本原理在于对客户端与服务器间传输的加密数据进行捕获、解密与结构化还原。这项技术的核心价值在于为自动化测试、风控策略研究、竞品分析与数据聚合服务提供底层数据支持,尤其在当前主流应用广泛采用Protobuf序列化与强化SSL机制的背景下更显重要。典型的应用场景包括安全研究、数据合规分析及第三方服务开发。本文聚焦于通过动态Hook技术绕过SSL Pinning防护,并利用运行时信息逆向技术解析Protobuf协议,完整还原从加密流

weixin_33881140的博客 393

爬虫教程( 4 ) --- scrapy-redis、集群、curl-cffi、scrapy-stealth、aio-scrapy、omnicrawl-core、反检测(反爬)浏览器

分布式爬虫 scrapy-redis、集群

freeking101的博客 6822

工作中使用到的单词(软件开发)

1.エイリアス   alias 别名 powershell使用 get-help 命令时,会得到与此命令 相关(别名)的命令 2.プロキシ proxy 代 理 3.プロモート   promote 促进,提升   开发的系统新功能上线发布,有时会使用到这个词,比如 STプロモート 还有使用リリース这个词的。比如STリリース。个人认为两者含义相同。 4.見逃し み................................................................

sun0322 6万+

2026性能测试工具盘点:13款主流压测工具与选型指南

性能测试是保障系统稳定性的核心手段,而压测工具则是模拟真实并发负载、验证服务吞吐能力的基石。从基于线程模型的JMeter到事件驱动架构的Gatling、云原生轻量级的k6,不同工具在并发模拟、协议支持与CI/CD集成上各有侧重。理解这些工具的原理与适用场景,有助于在接口压力测试、全链路压测及容量评估中精准选型。本文梳理了13款主流压测工具,覆盖开源与企业级平台,结合实战经验给出选型建议,帮助测试工程师快速构建高效、可复用的性能测试体系。

weixin_34023982的博客 427
上一篇: Android中点击空白处隐藏软键盘
下一篇: Android完全退出程序
xiawei327
博客等级 码龄15年 3粉丝 6原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值