Java实现:服务端登录系统并跳转到系统内的指定页面(不调用浏览器)
Java实现:服务端登录系统并跳转到系统内的指定页面(不调用浏览器)
1,思路:根据爬虫思想;
2,代码:
/**
* ClassName:AuthFr
* Function: TODO
* Reason: TODO
* Date: 2018年01月05日 上午14:02:44
* @author lizm
* @since JDK 1.6
*
*/
public class Test { public static Map<String, String> headers = null;
static {
headers = new HashMap<String, String>();
headers.put("User-Agent",Pub.getPropertiesValue("datasource", "User-Agent"));
headers.put("Accept-Language", Pub.getPropertiesValue("datasource", "Accept-Language"));
headers.put("Accept-Encoding", Pub.getPropertiesValue("datasource", "Accept-Encoding"));
headers.put("Accept", Pub.getPropertiesValue("datasource", "Accept"));
headers.put("Connection", Pub.getPropertiesValue("datasource", "Connection"));
headers.put("Content-Type", Pub.getPropertiesValue("datasource", "Content-Type"));
} //Java实现:服务端登录系统并跳转到系统内的指定页面(不打开浏览器)
public void gotoUrl(){
//登录页面url+用户名,密码等参数
String url = "";
url = Pub.getPropertiesValue("datasource", "finebi.login.url");
//系统内指定的页面(可带参数)
String url2 = "";
url2 = Pub.getPropertiesValue("datasource", "finebi.cancle.url");
//登录页面
org.jsoup.Connection conn = JsoupHelper.getConnection(url, null, "utf-8", headers);
try {
Response response = conn.execute();
String result = response.body();
//System.out.println("返回的json字符串login:"+result );
Robot r = new Robot();
//延时执行
r.delay(10000);
//重定向页面(必须是同一个conn,不然会跳到登录页面)
conn.url(url2);
response = conn.execute();
result = response.body();
//System.out.println("返回的json字符串cancle:" +result);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} public static void main(String[] args) throws IOException {
Test client = new Test();
client.gotoUrl();
}
3,对应的属性文件(datasource.properties):
#web url
finebi.login.url=登录url
#web url
finebi.cancle.url=访问页面url #head
User-Agent=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.110 Safari/537.36
Accept-Language=zh-CN,zh;q=0.8
Accept-Encoding=gzip, deflate, sdch, br
Accept=text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Connection=Keep-Alive
Content-Type=application/json;charset=UTF-8
作者:整合侠
链接:http://www.cnblogs.com/lizm166/p/8205085.html
来源:博客园
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
Java实现:服务端登录系统并跳转到系统内的指定页面(不调用浏览器)的更多相关文章
- Java向服务端转身 系统平台所对应的机器语言 虚拟CPU的机器语言字节码 bytecode
小结: 1.虚拟CPU的模拟器:java虚拟机 JVM Java将虚拟机(VM)作为插件集成到浏览器中,将编译后的Java程序(Applet)在虚拟机上运行,这种技术 当初是为了增强浏览器的功能. J ...
- Unity手游之路<二>Java版服务端使用protostuff简化protobuf开发
http://blog.csdn.net/janeky/article/details/17151465 开发一款网络游戏,首先要考虑的是客户端服务端之间用何种编码格式进行通信.之前我们介绍了Unit ...
- Java Socket 服务端发送数据 客户端接收数据
服务端: package com.thinkgem.wlw.modules.api.test.socket; /** * @Author: zhouhe * @Date: 2019/4/8 9:30 ...
- PHP服务端如何通过程序将图上传到指定的图片服务器与图片服务器的优化方案
一:PHP服务端如何通过程序将图上传到指定的图片服务器与图片服务器的优化方案 (1) php服务器把图片处理成缩率图或指定大小的图片在通过PHP程序代码 操作FTP 上传到图片服务器. 二:图片服务器 ...
- java实现微信小程序服务端(登录)
微信小程序如今被广泛使用,微信小程序按照微信官网的定义来说就是: 微信小程序是一种全新的连接用户与服务的方式,它可以在微信内被便捷地获取和传播,同时具有出色的使用体验. 这就是微信小程序的魅力所在,有 ...
- JAVA WEBSERVICE服务端&客户端的配置及调用(基于JDK)
前言:我之前是从事C#开发的,因公司项目目前转战JAVA&ANDROID开发,由于对JAVA的各种不了解,遇到的也是重重困难.目前在做WEBSERVICE提供数据支持,看了网上相关大片的资料也 ...
- Netty游戏服务器之六服务端登录消息处理
客户端unity3d已经把消息发送到netty服务器上了,那么ServerHandler类的public void channelRead(ChannelHandlerContext ctx, Obj ...
- java的服务端与客户端通信(2)
一.Socket连接与HTTP连接 1.1Socket套接字 套接字(socket)是通信的基石,是支持TCP/IP协议的网络通信的基本操作单元.它是网络通信过程中端点的抽象表示,包含进行网络通信 ...
- java SDK服务端推送 --极光推送(JPush)
网址:https://blog.csdn.net/duyusean/article/details/86581475 消息推送在APP应用中越来越普遍,来记录一下项目中用到的一种推送方式,对于Andr ...
随机推荐
- TClientDataSet数据源设置
TClientDataSet数据源设置 TClientDataSet数据源设置
- 现代3D图形编程学习-关于本书
关于这本书 三维图像处理硬件很快成为了必不可少的组件.很多操作系统能够直接使用三维图像硬件,有些甚至要求需要有3D渲染能力的硬件.同时对于日益增加的手机系统,3D图像硬件,也成为了它们的必备特征. 对 ...
- 【BZOJ4606】[Apio2008]DNA DP
[BZOJ4606][Apio2008]DNA Description 分析如DNA序列这样的生命科学数据是计算机的一个有趣应用.从生物学的角度上说,DNA 是一种由腺嘌呤.胞嘧啶.鸟嘌呤和胸腺嘧啶这 ...
- git sourcetree忽略某些文件提交
打开sourcetree 点击edit按钮,在文件中加入如下内容.*.iws*.iml*.iprtarget/.settings.project.classpath.externalToolBuild ...
- 160329(二)、web.xml配置详解
1.启动一个WEB项目的时候,WEB容器会去读取它的配置文件web.xml,读取<listener>和<context-param>两个结点. 2.紧急着,容创建一个Servl ...
- 按批次处理list数据 (list按条数取)
按批次处理list数据的两种方法 主要应用于list存储数据过多,不能使list整体进行其余操作 Java | 复制 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 ...
- MICRO-SERVICE
这个缩放立方体 (scale cube) 演示了各种可用的缩放选项: 缩放立方体 X 轴缩放 分担了应用程序的多个副本之间的工作负载,通常会使用一个负载平衡器或一个集群管理器. Y 轴缩放 将应用程序 ...
- SSH整合中,使用父action重构子类action类.(在父类中获取子类中的泛型对象)
import java.lang.reflect.ParameterizedType; import java.lang.reflect.Type; import com.opensymphony.x ...
- java中的 final 关键字 修饰引用时的问题
final使得被修饰的变量”不变”,但是由于对象型变量的本质是“引用”,使得“不变”也有了两种含义:引用本身的不变,和引用指向的对象不变. 引用本身的不变: final StringBuffer a= ...
- mybatis调用oracle存储过程例子.
1.MYBATIS方法: <select id="getFlowNum" statementType="CALLABLE"> <![CDATA ...