`

HTTP类 调用远程接口添加json 参数,返回json参数

阅读更多
package res;

import java.io.IOException;
import java.io.InputStream;
import java.io.UnsupportedEncodingException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.Properties;

import net.sf.json.JSONObject;

import org.apache.http.HttpHost;
import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.util.EntityUtils;

@SuppressWarnings("deprecation")
public class HttpClientVisitTest {

static Properties prop = null;
static {
InputStream is = HttpClientVisitTest.class
.getResourceAsStream("//config//ip.properties");
prop = new Properties();
try {
prop.load(is);
} catch (IOException e) {
e.printStackTrace();
}
}
private static final String HttpUrl = prop.getProperty("url");
private static final String HttpHost = prop.getProperty("ip");

public JSONObject testHttpClientVisit(String token, String Authorization) {
HttpClient httpClient = new DefaultHttpClient();
HttpPost httpPost = new HttpPost(HttpUrl);
JSONObject msg = null;
int resultCode = 0;
try {
StringEntity s = new StringEntity(getMsg(token).toString());
s.setContentEncoding("UTF-8");
s.setContentType("application/json");
httpPost.setEntity(s);
} catch (UnsupportedEncodingException e1) {
e1.printStackTrace();
}
HttpResponse httpResponse = null;

try {
HttpHost httpTarget = new HttpHost(HttpHost, Integer.parseInt(prop
.getProperty("port")), "http");
System.out.println("#####已经发送请求服务器 :" + new Date() + ",$$$,"
+ httpTarget);
httpResponse = httpClient.execute(httpTarget, httpPost);
    resultCode = httpResponse.getStatusLine().getStatusCode();
if(resultCode == 500){
msg = new JSONObject();
JSONObject header = new JSONObject();
header.put("resultcode", "-1");
msg.put("header", header);
return msg;
}
    String ss=EntityUtils.toString(httpResponse.getEntity());
msg=JSONObject.fromObject(ss);
} catch (Exception e) {
System.out.println("error############# 远程异常  请求报错,请查看 :" + resultCode);
e.printStackTrace();
msg = new JSONObject();
JSONObject header = new JSONObject();
header.put("resultcode", "-1");
msg.put("header", header);
return msg;
} finally {
if (httpPost.isAborted()) {
httpPost.abort();
}
httpClient.getConnectionManager().shutdown();
}
return msg;
}

/**
* 返回请求参数
*
* @return
*/
public JSONObject getMsg(String token) {
JSONObject header = new JSONObject();
JSONObject body = new JSONObject();
JSONObject msg = new JSONObject();
header.put("version", "1.0");
header.put("msgid", "abcde");// 目前没用处
String p_pattern = "yyyyMMddHHmmssSSS";
SimpleDateFormat p_sdf = new SimpleDateFormat(p_pattern);
// 定义要转换的Date对象,我的例子中使用了当前时间
Calendar p_cal = Calendar.getInstance();
Date p_date = p_cal.getTime();
// 输出结果
System.out.println("====>" + p_sdf.format(p_date));
header.put("systemtime", p_sdf.format(p_date).toString());
header.put("sourceid", "");
header.put("appid", "5");
body.put("token", token);
msg.put("header", header);
msg.put("body", body);
return msg;
}

}


//下面是配置文件信息
url=http://192.168.107.221:9042/idmp/client/tokenValidate
ip=192.168.107.221
port=9042
分享到:
评论

相关推荐

    安卓调用远程http接口http-json

    本教程将深入探讨如何在Android应用中调用远程HTTP接口并处理返回的JSON数据。 一、HTTP请求库的选择 在Android中,我们可以使用多种库来发送HTTP请求,如HttpURLConnection(原生API)、Volley、Retrofit、OkHttp...

    java调用远程接口传输数据的demo

    java调用远程接口传输数据的demo

    PB调用http api接口 PB解析json

    PB调用HTTP API接口是PowerBuilder(PB)应用程序与远程服务交互的一种常见方式,这使得PB应用能够利用Web服务或RESTful API获取和传递数据。在这个过程中,PB不仅需要发送HTTP请求,还需要处理响应,尤其是当响应...

    jsonRPC java远程调用 返回json

    jsonRPC java远程调用(请求) 返回json

    json调用json调用json调用json调用

    在JSON调用的上下文中,Gradle可能用于自动化构建和测试过程,其中可能涉及到读取或写入JSON文件,或者与使用JSON数据的远程服务进行交互。例如,构建脚本可能读取配置文件(如`gradle.properties`)中的API密钥,并...

    SSH封装接口返回Json数据

    总结来说,"SSH封装接口返回Json数据"涉及了SSH远程操作、Json数据交换、数据库交互、接口设计和安全性等多个方面,是构建分布式系统和自动化运维的重要技术手段。在实践中,我们需要熟练掌握这些技能,并结合具体...

    httpClient调用远程接口获取数据到本地文件夹

    在这个例子中,我们使用HttpClient来调用远程接口,从电信公司的网站获取可用手机号码的数据,并将其存储到本地文件系统。以下是对这个过程的详细解释: 1. **HttpClient的引入与配置**: 首先,我们需要在项目中...

    亚马逊远程调用接口并方法JSON数据DEMO.rar

    远程调用接口并返回JSON数据DEMO, 可用于远程调用亚马逊的端口 并接受处理XML数据格式 转为JSON 可以直接下载使用 传参就能了。 远程调用接口并返回JSON数据DEMO, 可用于远程调用亚马逊的端口 并接受处理XML数据...

    service_java接口远程调用_get、post、带参数远程调用_

    本篇文章将详细讲解如何使用Java实现GET和POST方法的远程接口调用,以及如何处理带有参数的情况。 首先,我们要了解HTTP协议中的GET和POST请求。GET请求通常用于获取资源,其参数包含在URL中;而POST请求常用于提交...

    数据抽取-Kettl动态参数调用HTTP、POST接口

    它支持多种数据源,包括数据库、文件、Web服务等,其中HTTP和POST接口调用是与远程系统进行通信的重要方式。 二、HTTP和POST接口调用 HTTP协议是互联网上应用最为广泛的一种网络协议,而POST是HTTP协议中的一个请求...

    HttpURLConnection实现三方接口调用,带有FILE文件参数

    HttpURLConnection实现三方接口HTTP调用调用,带有FILE文件参数

    PHP调用接口用post方法传送json数据的实例

    在PHP中,调用外部接口并传递JSON数据是常见的任务,尤其在Web服务和API集成中。本实例将深入解析如何使用PHP的cURL库来实现这个过程。 首先,我们需要了解JSON(JavaScript Object Notation)数据格式。JSON是一种...

    致远OA开发REST远程接口实现发送表单

    确保将这些jar包添加到你的项目类路径中,以便能够正确调用OA的相关API和服务。 最后,关于“致远API地址”,这是一个重要的参考资料,通常包含API的详细文档,包括每个接口的URL、参数说明、返回值等。开发者应...

    httpClient 调用远程接口 获取数据到本地文件夹

    在这个场景中,我们使用HttpClient来调用远程接口,从电信公司的网站获取可用的新手机号码信息,并将这些数据存储到本地文件中。以下是对这个过程的详细解释: 1. **HttpClient的基本使用**: HttpClient提供了一...

    json着色工具(支持远程调用,本地json字符串)

    总之,JSON着色工具是开发过程中不可或缺的辅助工具,无论是对本地JSON文件的操作,还是对远程API接口的测试,都能提供极大的便利,提升开发效率。对于处理JSON数据的初学者和经验丰富的开发者而言,这类工具都是...

    java通过url调用接口

    总的来说,这个项目提供了从Java应用调用HTTP接口,接收字符串响应,然后将其解析为JSON的完整流程。这在开发需要与远程服务交互的应用时非常有用。记住,理解和掌握这些基本操作是构建复杂网络应用程序的基础。

    利用Camel调用远程对象

    3. **数据转换**:在调用远程对象时,往往需要将数据转换为适应远程接口的格式。Camel 支持使用语言无关的DataFormat组件,如JSON、XML等,来完成这种转换。 4. **错误处理和事务管理**:在分布式环境中,错误处理...

    LabView调用WebService接口的各种操作

    LabView调用WebService接口是一种常见的数据交互方式,尤其在工业自动化和嵌入式系统中,它允许LabView程序与远程服务器进行数据交换。本教程将详细介绍如何在LabView中使用WebService,包括POST方法用于上传数据和...

    jsonrpc4j整合Spring+Maven轻量级远程调用

    使用这个客户端,你可以像调用本地方法一样调用远程服务,JSONRPC4J会自动处理请求的构建和响应的解析。 7. **错误处理和异常转换** JSONRPC4J支持错误码和错误消息的传递,当服务端抛出异常时,客户端可以通过...

    webservice参数的获取.docx

    开发者可以通过HTTP协议调用远程服务,实现分布式系统的集成与交互。 ##### 2.2 WSDL文件 WSDL(Web Services Description Language)是描述WebService的文件格式,它定义了服务的接口、消息格式、消息交换模式...

Global site tag (gtag.js) - Google Analytics