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 ...
随机推荐
- day03 --class --homework
'''# >>>>>>2 :,有字符串s = "123a4b5c"#>>>>>^ 1: # 1)通过对s切片形成新 ...
- urllib的使用
1.urllib 中的urlopen urllib.urlopen(url,data) 如果请求是json格式,则data是json.dumps(data_dict)形成的数据,注意,不能在进行url ...
- CSS01--概述与选择器
CSS:Cascading Style Sheets,层叠样式表.我们之前已经说过,HTML解决的是网页内容(结构)的问题,而CSS立足于网页的表现方面的问题,则样式定义如何显示HTML标签,js负责 ...
- springboot第四篇:debug模式开发运用
前提:项目是以maven project结构建立的,现状是无法进行断点调试的.怎么才能在eclipse里进行调试呢? 需要:①将项目打包部署到tomcat ②往项目加入dynamic web modu ...
- 【VS2015】关于VS2015如何运行的问题
各位看官,lt's been a long time since we met last time. 是否习惯了CodeBlocks那种简易编写C文件?一到写工程就懵逼的状态?今天我给他们带来如何让C ...
- 02-url路由分配及模板渲染方式
本章主要内容 1.url基本概念及格式 2.path和re_path 3.模板路径配置 4.模板渲染方式 1.url基本概念及格式 URL(uniform Resoure Locator)统一资源定位 ...
- 01-django项目环境搭建
一.Web应用框架----Django http服务器:用来接受用户请求,并将请求转发给web应用框架进行处理. Web应用框架处理完以后再发送给http服务器,http服务器再返回给用户 二.工具准 ...
- php 根据子分类循环获取其父级分类
/** * 根据子分类循环获取其父级分类 */ function goodsCatPath($catId, $data = []){ if($catId==0)return $data; $data[ ...
- Flutter框架概览
前言:进入新框架的开发前,有必要整体了解框架设计及特点,对该框架初步认识,此文对Flutter框架进行浅显梳理,以备查阅: Flutter框架 从该架构图可知,Flutter框架可分为Framew ...
- winform FormBordStyle=none 及 wpf FormBordStyle=none 的鼠标点击移动问题
winform: //bool formMove = false;//窗体是否移动 //Point formPoint;//记录窗体的位置 private void Login_MouseDown(o ...