java 接口中模拟浏览器 请求webservice 接受返回数据
使用HttpClient
所需jar:commons-codec-1.9.jar,commons-httpclient-3.1.jar
try {
HttpClient client = new HttpClient(new HttpClientParams(),new SimpleHttpConnectionManager(true));
HttpMethod method = null;
String uri = "{接口的uRL直接带参数}}";
method = new GetMethod(uri);
//浏览器的requestHeader 模拟浏览器
method.setRequestHeader("User-Agent","Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.87 Safari/537.36");
method.setRequestHeader("Accept","image/webp,image/*,*/*;q=0.8");
method.setRequestHeader("Cookie","ORA_BIPS_LBINFO=157b18e65d9; ORA_BIPS_NQID=jifecsdccfgkctabqnhk687a48hdaqsthos17jofllohscns");
try {
//执行getMethod
int statusCode = client.executeMethod(method);
if (statusCode != HttpStatus.SC_OK) {
System.err.println("Method failed: "+ method.getStatusLine());
}
//读取内容
String dataXml = method.getResponseBodyAsString();
//处理内容
System.out.println(new String(dataXml));
JSONObject json = Xml2JsonUtil.xml2JSON(dataXml);
response.setContentType("text/plain; charset=UTF-8");
response.getWriter().write(json.toString());
response.getWriter().flush();
response.getWriter().close();
} catch (HttpException e)
{
/ /发生致命的异常,可能是协议不对或者返回的内容有问题
System.out.println("Please check your provided http address!");
e.printStackTrace();
} catch (IOException e) {
//发生网络异常
e.printStackTrace();
} finally {
//释放连接
method.releaseConnection();
}
}catch(Exception e)
{
e.printStackTrace();
}
java 接口中模拟浏览器 请求webservice 接受返回数据的更多相关文章
- 使用HttpClient实现对第三方服务器的请求并接受返回数据
/* * 创建日期 2017-4-7 * * TODO 要更改此生成的文件的模板,请转至 * 窗口 - 首选项 - Java - 代码样式 - 代码模板 */ package com.enfo.int ...
- 第四十节,requests模拟浏览器请求模块初识
requests模拟浏览器请求模块初识 requests模拟浏览器请求模块属于第三方模块 源码下载地址http://docs.python-requests.org/zh_CN/latest/use ...
- python入门常用方法(转json,模拟浏览器请求头,写入文件)
转json import jsonjson = json.loads(html) 模拟浏览器请求头 import urllib.request req = urllib.request.Request ...
- 关于HttpClient模拟浏览器请求的參数乱码问题解决方式
转载请注明出处:http://blog.csdn.net/xiaojimanman/article/details/44407297 http://www.llwjy.com/blogdetail/9 ...
- java接口如何有效防止恶意请求
java接口如何有效防止恶意请求?已解决 解决方法: 1.在redis数据库db0中新建一个名为rd_sms_request_count表,表结构: Ip:客户请求的ip Success_coun ...
- requests模拟浏览器请求模块初识
requests模拟浏览器请求模块初识 一.下载 requests模拟浏览器请求模块属于第三方模块 源码下载地址http://docs.python-requests.org/zh_CN/lates ...
- 第五十九节,模拟浏览器请求Python结合html基本格式
模拟浏览器请求Python结合html基本格式 用Python模拟一个客户端,结合打开一个HTML页面 创建客户端 #!/usr/bin/env python # -*- coding:utf8 -* ...
- 解决java web中safari浏览器下载后文件中文乱码问题
解决java web中safari浏览器下载后文件中文乱码问题 String fileName = "测试文件.doc"; String userAgent = request.g ...
- Java接口中的成员变量默认为(public、static、final)、方法为(public、abstract)
interface”(接口)可将其想象为一个“纯”抽象类.它允许创建者规定一个类的基本形式:方法名.自变量列表以及返回类型,但不实现方法主体.接口也可包含基本数据类型的数据成员,但它们都默认为publ ...
随机推荐
- Spring使用ThreadLocal技术来处理这些问题
过去我习惯于从左到右的思考,因为这符合书写的习惯,对于“好”得前端工程师,我们首先可能会去思考什么是好,好的定义和范围,标准和要求?但现在我习惯于从右到左的思考,因为我觉得越是抽象越难以定义,从粒度更 ...
- yum常用命令
Yum list kmod-coretemp[查找kmod-coretemp模块状态] Yum clean all[清空yum缓存] Yum remove kmod-coretemp [卸载kmod- ...
- javaIO-学习笔记
package IOTest; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream ...
- MongoDB学习笔记七:管理
[启动和停止MongoDB]『从命令行启动』执行mongod,启动MongoDB服务器.mongod有很多可配置的启动选项:在命令行运行mongod --help可以查看所有选项.一些主要选项如下: ...
- java代码
io的使用 package com.tan.io; import java.io.*; import java.util.*; class Employee{ private String name; ...
- mvc模型验证
自定义的ValidationAttribute类, Compare [Compare("MyOtherProperty")] 两个属性必须相同值,比如我们要求用户重复输入两次邮 ...
- ValidateRequest问题
1,在出现该错误的页面头部的page中加入ValidateRequest="false",那么该页面的任何一次Post提交都不会再验证提交内容的安全性.如: <%@ Page ...
- LeetCode "Third Maximum Number"
Straight-forward strategy.. please take care of all details - data type, assignment order etc. class ...
- 压力测试 php-fpm 优化
webbench最多可以模拟3万个并发连接去测试网站的负载能力,个人感觉要比Apache自带的ab压力测试工具好,安装使用也特别方便. 1.适用系统:Linux 2.编译安装:引用wget http: ...
- ubuntu 彻底卸载软件
找到此软件名称,然后sudo apt-get purge ......(点点为为程序名称),purge参数为彻底删除文件,然后sudo apt-get autoremove,sudo apt-get ...