Java通过代理访问互联网平台提供的WebService接口的一种方法
来源:互联网 发布:linux监控服务器性能 编辑:程序博客网 时间:2024/05/24 06:31
背景
通常基于两点原因需要通过代理访问互联网平台的提供的WebService接口:
1. 在公司企业内网访问外部互联网公司发布的接口,公司要求通过代理访问。
2. 频繁访问接口,IP被平台封了,需要寻求一个代理访问。
以调用高德提供的坐标转换接口为例
高德提供的接口URL 是:http://restapi.amap.com/v3/assistant/coordinate
locations=116.481499,39.990475&coordsys=gps&output=xml&key=<用户的key>接口详细说明见:http://lbs.amap.com/api/webservice/guide/api/convert/#convert 。
为了方便JAVA代码调用,可以对接口PATH和参数做一些封装。
封装公共函数
package com.huawei.internetcrawler.util;import java.util.HashMap;import java.util.Map;import java.util.Map.Entry;import javax.ws.rs.core.MediaType;import org.apache.cxf.jaxrs.client.WebClient;public class WebServiceUtil{ /** * 设置外网访问proxy */ static { System.setProperty("http.proxyHost", "代理IP或者域名"); System.setProperty("http.proxyPort", "代理端口号"); } /******************************************************************************************************************* * Title: invokeWS * Description: 调用WebService服务。用于调用互联网开发平台提供的查询接口。 * * @param url webservice服务接口url。 * * @return 返回查询结果的json串 ******************************************************************************************************************/ public static String invokeWS(String url, Map<String, String> queryParaMap) { WebClient client = WebClient.create(url); for (Entry<String, String> entry : queryParaMap.entrySet()) { client.query(entry.getKey(), entry.getValue()); } String result =client.accept(MediaType.APPLICATION_JSON).get(String.class); return result; }}
客户端调用代码样例
public static void main(String[] args) { Map<String, String> queryParaMap = new HashMap<String, String>(); queryParaMap.put("key", "b21166784a64fe201084e6f057f384ab"); queryParaMap.put("locations", "113.941084,22.546002"); queryParaMap.put("coordsys", "baidu"); invokeWS("http://restapi.amap.com/v3/assistant/coordinate/convert", queryParaMap); }
0 0
- Java通过代理访问互联网平台提供的WebService接口的一种方法
- IOS 访问java提供的webservice接口,心魔之使
- CXF提供Client调用WebService接口的方法
- CXF提供Client调用WebService接口的三种方法
- 互联网 免费的WebService接口
- 互联网 免费的WebService接口
- 互联网 免费的WebService接口
- 互联网 免费的WebService接口
- 互联网 免费的WebService接口
- 互联网 免费的WebService接口
- .NET平台下基于webservice,通过获取硬件cpu序列号和随机字符串序列号实现软件加密的一种方法。
- Java编写通过代理访问的应用程序
- SPI模块的JNI方法提供Java访问HAL层服务接口
- SPI模块的JNI方法提供Java访问HAL层服务接口【转】
- 一种开放平台代理访问方法及装置
- webservice实际应用之调用外部系统提供的服务端地址,写java的webservice客户端程序并通过接口给外部系统传数据
- ofbiz的webservice接口提供(3)-不规范的wsdl的客户端访问代码
- ofbiz的webservice接口提供(3)-不规范的wsdl的客户端访问代码
- AngularJS 自定义常量服务
- Keras 切换GPU
- Zoj 2868 Incredible Cows (分半dfs暴搜)
- Spring MVC--8.JSON、国际化、文件上传
- task struct
- Java通过代理访问互联网平台提供的WebService接口的一种方法
- MYSQL性能优化详解(一)
- 线程的简单小列子- 龟兔赛跑-继承Thread类
- AngularJS 路由和多视图
- 13.线程间通信
- Linux中内核控制块task_struck
- 跟着内核学框架-从misc子系统到3+2+1设备识别驱动框架
- AngularJS 路由和多视图2
- 剑指:用两个队列实现栈的先进后出