android中利用HttpURLConnection进行Get、Post和Session读取页面。
直接上代码,调用的时候要放在线程中。
package slj.getsms; import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.URL;
import java.io.IOException; public class sljWork {
public static String GetDataFromKC(String loginUrl,String loginParam,String indexUrl)
{
byte[] btParam=loginParam.getBytes();
try{
URL url=new URL(loginUrl);
HttpURLConnection conn=(HttpURLConnection)url.openConnection();
conn.setConnectTimeout(3000);
conn.setRequestMethod("POST");
conn.setInstanceFollowRedirects(false);
OutputStream outStream=conn.getOutputStream();
outStream.write(btParam);
conn.connect();
String[] backHeader=conn.getHeaderField("Location").split(";");
String sessionId="user_login_id=dddd; "+backHeader[1].toUpperCase();
URL nextUrl=new URL(indexUrl);
HttpURLConnection nextConn=(HttpURLConnection)nextUrl.openConnection();
nextConn.addRequestProperty("Cookie",sessionId);
nextConn.connect();
BufferedReader bufReader=new BufferedReader(new InputStreamReader(nextConn.getInputStream(),"GBK"));
String backData="";
String line="";
while((line=bufReader.readLine())!=null)
backData+=line+"\r\n";
return backData;
}catch (IOException e){
return "ErrorInfo:"+e.getMessage().toString();
}
}
public static String GetDataByPost(String strUrl)
{
byte[] btPostData=new String("pname=slj&ppass=slj").getBytes();
try{
URL url=new URL(strUrl);
HttpURLConnection conn=(HttpURLConnection)url.openConnection();
conn.setConnectTimeout(3000);
conn.setRequestMethod("POST");
conn.setInstanceFollowRedirects(false);
OutputStream outStream=conn.getOutputStream();
outStream.write(btPostData);
conn.connect();
BufferedReader bufReader=new BufferedReader(new InputStreamReader(conn.getInputStream(),"utf-8"));
String backData="";
String line="";
while((line=bufReader.readLine())!=null)
backData+=line+"\r\n";
return backData;
}catch(IOException e){
return "ErrorInfo:"+e.getMessage().toString();
}
}
public static String GetDataByGet(String strUrl)
{
try{
URL url=new URL(strUrl);
HttpURLConnection conn=(HttpURLConnection)url.openConnection();
conn.setConnectTimeout(3000);
conn.setRequestMethod("GET");
conn.connect();
BufferedReader bufReader=new BufferedReader(new InputStreamReader(conn.getInputStream(),"utf-8"));
String backData="";
String line="";
while((line=bufReader.readLine())!=null)
backData+=line+"\r\n";
return backData;
}catch(IOException e){
return "ErrorInfo:"+e.getMessage().toString();
}
}
}
android中利用HttpURLConnection进行Get、Post和Session读取页面。的更多相关文章
- Android中利用Handler实现消息的分发机制(三)
在第二篇文章<Android中利用Handler实现消息的分发机制(一)>中,我们讲到主线程的Looper是Android系统在启动App的时候,已经帮我们创建好了,而假设在子线程中须要去 ...
- Android中利用ant进行多渠道循环批量打包
公司负责Android开发的小伙伴学习能力稍微偏弱,交代给他的自动化打包的任务,弄了好久依然没有成效.无奈只好亲自出手. 没有想到过程很顺利,我完全按照如下文章的步骤进行: 主要参考: Android ...
- Android中使用HttpURLConnection实现GET POST JSON数据与下载图片
Android中使用HttpURLConnection实现GET POST JSON数据与下载图片 Android6.0中把Apache HTTP Client全部的包与类都标记为deprecated ...
- Android中利用C++处理Bitmap对象
相信有些Android&图像算法开发者和我一样,遇到过这样的状况:要对Bitmap对象做一些密集计算(例如逐像素的滤波),但是在java层写循环代码来逐像素操作明显是不现实的,因为Java代码 ...
- Android中利用jsoup解析html页面
学习jsoup :jsoup学习网站 Android 中使用: 添加依赖 implementation 'org.jsoup:jsoup:1.10.1' 直接上代码: package com.load ...
- Android中利用Camera与Matrix实现3D效果详解
本文行文目录: 一.Camera与Matrix初步认识 二.Camera与Matrix旋转效果拆分介绍 三.Camera与Matrix实现立体3D切换效果 [csdn地址:http://blog.cs ...
- Android中利用ViewHolder优化自定义Adapter的典型写法
利用ViewHolder优化自定义Adapter的典型写法 最近写Adapter写得多了,慢慢就熟悉了. 用ViewHolder,主要是进行一些性能优化,减少一些不必要的重复操作.(WXD同学教我的. ...
- [Android基础]Android中使用HttpURLConnection
HttpURLConnection继承了URLConnection,因此也能够向指定站点发送GET请求.POST请求.它在URLConnetion的基础上提供了例如以下便捷的方法. int getRe ...
- Android中利用正则表达式验证手机号是否合法
利用正则表达式来验证手机号是否合法,现在我们简单使用一下,这个在实际的应用中很实用. 例:在输入框中输入手机号,判断是否合法, MainActivity中: package com.example.m ...
随机推荐
- python要点记录
1.字典:当存储的key数目在几万到几十万之间效率最高.
- 【初探】java性能火焰图的生成
前言 开始之前,你需要准备的环境: Linux系统机器或者虚拟机一台,里面需要安装的软件:git.jdk.perl. 简单介绍: java性能分析火焰图的所做的事情就是能够分析出java程序运行期间存 ...
- 关于Vue中main.js,App.vue,index.html之间关系进行总结
在初始化的Vue项目中,我们最先接触到的就是main.js,App.vue,index.html这三个文件,我们从培训视频或者官方文档上可以了解到: index.html---主页,项目入口 App. ...
- 【性能压测】:MQ队列异步处理机制导致的系统无法接受请求的问题
一,最近压测系统交易峰值时,因该支交易采用MQ异步队列处理机制:该增加积分的交易,前段服务器优先返回给客户增加积分成功的结果,后端的MQ队列服务器再慢慢处理该请求: 二,压测过程中出现的问题现象:前几 ...
- DB2 Package Issues and Solution
Client 从 10.1 升级到11.1之后,而server端的DB 是10.1 版本,当客户执行sql语句时候报错: select * from ebcc.eol_item_info where ...
- [问题解决]gradle编译失败系统找不到指定的文件
[问题解决]gradle编译失败系统找不到指定的文件 问题描述 Error:C:\Users\diql.gradle\caches\2.14.1\scripts-remapped\settings_9 ...
- C#(winform)实现不同DPI控件自适应1
1. PicBox控件 顺便一提关键字:stretch [stretʃ] vt. 伸展,张开 //控制pictureBox图片的显示格式 this.picClose.BackgroundImageLa ...
- 剑指offer(26-30)编程题
二叉搜索树与双向链表 字符串的排列 数组中出现次数超过一半的数字 最小的K个数 连续子数组的最大和 26.输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表.要求不能创建任何新的结点,只能调整 ...
- leetcode2:线性表
/********************************************** Function:input two array and find the kth value the ...
- 什么是SharePoint?
在聊SharePoint开发之前,有必要说下什么是SharePoint. 在我工作的过程中,经常遇到客户对SharePoint不太了解的情况.有客户说,SharePoint太烂了,DropBox能做到 ...