NoHttp封装--03 cookie
NoHttp请求自动维持Cookie:
1.支持Session、Cookie、临时Cookie的位置。
2.支持App重启、关机开机后继续持久化维持。
3.提供了接口,允许开发者监听Cookie的变化,也可以改变某个Cookie的值。
服务器端:
@WebServlet("/login")
public class LoginServlet extends BaseJsonServlet {
private static final long serialVersionUID = 145646L;
@Override
protected String onResponse(HttpServletRequest request, HttpServletResponse response) throws Exception {
String userName = request.getParameter("userName");
String userpwd = request.getParameter("userPwd");
if ("yolanda".equals(userName) && "".equals(userpwd)) {
Cookie cookie = new Cookie("userInfo", "yolalasf3153a1");
cookie.setMaxAge( * );
response.addCookie(cookie);
return "登录成功";
} else {
return "登录失败";
}
}
}
客户端:
public class CookieGetActivity extends Activity implements View.OnClickListener {
private TextView mTvResult;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_login);
findViewById(R.id.btn_login).setOnClickListener(this);
mTvResult = (TextView) findViewById(R.id.tv_result);
}
@Override
public void onClick(View v) {
if (v.getId() == R.id.btn_login) {// 登录按钮
Request<JSONObject> request = new FastJsonRequest("http://192.168.1.116/HttpServer/login?userName=yolanda&userPwd=123", RequestMethod.GET);
CallServer.getInstance().add(this, request, callBack, , true, false, true);
}
}
private HttpCallBack<JSONObject> callBack = new HttpCallBack<JSONObject>() {
@Override
public void onSucceed(int what, Response<JSONObject> response) {
JSONObject jsonObject = response.get();
String result = "成功了:" + jsonObject.getString("data");
// 成功时拿到头
Headers headers = response.getHeaders();
List<HttpCookie> cookies = headers.getCookies();
for (HttpCookie httpCookie : cookies) {
String cookieName = httpCookie.getName();
if ("userInfo".equals(cookieName)) {
// 这里就拿到了你想那的cookie
result += "\n";
result += httpCookie.getValue();
}
}
mTvResult.setText(result);
}
@Override
public void onFailed(int what, String url, Object tag, Exception exception, int responseCode, long networkMillis) {
mTvResult.setText("失败了" + exception.getClass().getName());
}
};
}


文章:https://blog.csdn.net/sinat_31057219/article/details/74217030
NoHttp封装--03 cookie的更多相关文章
- NoHttp封装--03 缓存
1.Default模式,也是没有设置缓存模式时的默认模式 这个模式实现http协议中的内容,比如响应码是304时,当然还会结合E-Tag和LastModify等头. StringRequest req ...
- # 095 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 03 封装总结 01 封装知识点总结
095 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...
- js 封装设计cookie
http://www.imooc.com/article/12700<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional/ ...
- Ajax的封装03
一.Ajax 1.原理:基于http协议的 内置对象:XMLHttpRequest 发起请求 那会相应 步骤: var xhr=new XMLHttpRequest(); // 请 ...
- cookie方法封装及cookie缺点分析
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px Consolas; color: #4f5d66 } p.p2 { margin: 0.0px ...
- NoHttp封装--07 自定义异步任务框架
MainActivity: public class MainActivity extends Activity implements View.OnClickListener { .... @Ove ...
- NoHttp封装--05 文件下载
xml <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:la ...
- NoHttp封装--02 自定义请求
bean实体类请求: 1.bean import java.io.Serializable; import com.alibaba.fastjson.annotation.JSONField; pub ...
- NoHttp封装--01
NoHttpActivity public class NoHttpActivity extends Activity implements View.OnClickListener { privat ...
随机推荐
- SpringCloud-Eurake坑
首先遇到的问题 Eurake单台部署,很容易出现自我保护,发现web管理页面一大串红字警告 这个问题通过关闭自我保护机制可以简单解决..一般集群部署不会出现 eureka: server: renew ...
- docker学习篇(一) ----入门篇
什么是docker docker自2013年诞生以来已有5年了,最初基于Google公司的go语言实现的,项目代码在GitHub上进行维护. 项目地址:https://github.com/moby/ ...
- Mac下命令行批量重命名
日常中碰到需要批量修改文件名怎么办?嗯,来终端先 案例:将Users/case目录下所有html文件修改为php文件 步骤: 1.进入目标文件夹 $ cd Users/case 2.执行以下命令 $ ...
- js把文本字符串转换为文件并下载
### 兼容性没有怎么处理啊 exportRaw('text.txt','123123123') function fakeClick(obj) { var ev = document.createE ...
- 从零开始学 Web 之 Ajax(六)jQuery中的Ajax
大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...
- WC2017游记 & 能力残废康复计划
懒癌晚期的蒟蒻一年多没有更Blog了… 这次冬眠营去绍一省好好地游玩了一番,体验了一段时间的豪华自助餐,成功吃胖… 第一课堂的东西基本还是没吸收…听着觉得有点道理,结果过几分钟就忘了…可能最大的收获就 ...
- #11 Python字典
前言 前两节介绍了Python列表和字符串的相关用法,这两种数据类型都是有序的数据类型,所以它们可以通过索引来访问内部元素.本文将记录一种无序的数据类型——字典! 一.字典与列表和字符串的区别 字典是 ...
- [HEOI2016] 字符串
Description 给定长度为n的字符串,m次询问,每次询问s[a...b]的所有子串与s[c...d]的LCP的最大值.n,m<=10^5. Solution 感觉这种n,m<=10 ...
- Apollo 5 教你怎么把自己的配置放到 Spring 环境中
目录: 前言 处理方案 简单例子 前言 有的时候,你可能需要在 Spring 环境中放入一些配置,但这些配置无法写死在配置文件中,只能运行时放入.那么,这个时候该怎么办呢? Apollo 就是搞配置的 ...
- Shiro学习总结(1)——Apache Shiro简介
1.1 简介 Apache Shiro是Java的一个安全框架.目前,使用Apache Shiro的人越来越多,因为它相当简单,对比springSecurity,可能没有Spring Securit ...