import org.apache.commons.httpclient.HttpClient; import org.apache.commons.httpclient.NameValuePair; import org.apache.commons.httpclient.methods.PostMethod; import org.apache.http.HttpEntity; import org.apache.http.HttpResponse; import org.apache.http.client.entity.UrlEncodedFormEntity; import org.apache.http.client.methods.HttpPost; import org.apache.http.impl.client.CloseableHttpClient; import org.apache.http.impl.client.HttpClients; import org.apache.http.message.BasicNameValuePair; import org.apache.http.protocol.HTTP; import org.apache.http.util.EntityUtils; /* 第一种:httpClient 方式 所需jar包: commons-httpclient-3.0.1.jar 及其他依赖jar包 */ public static void sendPostRequest1(Map<String,String> paramMap,String REQUEST_URL) { try { HttpClient httpclient = new HttpClient(); httpclient.getParams().setHttpElementCharset("utf-8"); httpclient.getParams().setContentCharset("utf-8"); httpclient.getParams().setSoTimeout(10000); PostMethod post=new PostMethod(REQUEST_URL); //参数数组 NameValuePair[] params=new NameValuePair[paramMap.size()]; int index=0; for(String key : paramMap.keySet()) { String value=paramMap.get(key); NameValuePair n=new NameValuePair(key,value); params[index]=n; index++; } /* 另一种添加参数的方法: post.addParameter(key, value); */ //设置请求参数 post.setRequestBody(params); //开始请求 httpclient.executeMethod(post); // 判断请求响应状态码,状态码为200表示服务端成功响应了客户端的请求 if(post.getStatusCode()==200) { //获取返回消息字符串 String str=post.getResponseBodyAsString(); System.out.println(str); } } catch (Exception e) { e.printStackTrace(); } } /* 第二种:HttpPost 方式 所需jar包: httpclient-4.3.5.jar、httpcore-4.3.2.jar 及其他依赖jar包 */ public static void sendPostRequest2(Map<String,String> paramMap,String REQUEST_URL) { try { CloseableHttpClient httpclient = HttpClients.createDefault(); HttpPost httpPost = new HttpPost(REQUEST_URL); //设置请求和传输超时时间 RequestConfig config=RequestConfig.custom().setSocketTimeout(5000).setConnectTimeout(5000).build(); httpPost.setConfig(config); List<org.apache.http.NameValuePair> list=new ArrayList<org.apache.http.NameValuePair>(); for(String key : paramMap.keySet()) { String value=paramMap.get(key); BasicNameValuePair n=new BasicNameValuePair(key,value); list.add(n); } //设置参数 HttpEntity httpEntity=new UrlEncodedFormEntity(list,HTTP.UTF_8); httpPost.setEntity(httpEntity); //开始请求 HttpResponse response=httpclient.execute(httpPost); // 判断请求响应状态码,状态码为200表示服务端成功响应了客户端的请求 if(response.getStatusLine().getStatusCode()==200) { //获取返回消息字符串 String result=EntityUtils.toString(response.getEntity()); System.out.println(result); } } catch (Exception e) { e.printStackTrace(); } }
相关推荐
本篇文章将深入探讨两种接口的简单调用方法,包括在不同Activity间以及在同一Activity内调用接口。 首先,我们来看如何创建一个接口。在Java或Kotlin这样的语言中,接口定义通常如下: ```java public interface ...
本文将深入探讨“再谈kettle两种循环之-调用http分页接口循环获取数据”这一主题,旨在提供对循环Job、变量运用、调用HTTP分页接口、生成连续记录以及MD5加密等知识点的详细理解和实践指导。 首先,Kettle中的循环...
C#动态载入DLL,DLL中类方法调用,及采用接口方式调用DLL的类方法和获取类成员属性。含示例代码及程序运行截图。
本文介绍了如何使用Java语言调用HTTP REST接口,包括GET和POST两种常见的请求类型。通过示例代码,我们可以看到如何使用Apache HttpClient库来实现这些请求,并注意到一些重要的细节,比如异常处理和资源释放等。...
在.NET框架中,调用Web服务接口...总结来说,.NET调用Web Service接口涉及到添加服务引用、生成代理类、配置连接、调用方法以及异常处理等步骤。在实际项目中,开发者需要结合具体的业务需求和接口文档进行细致的操作。
5. **错误处理和异常转换**:由于C#和Java的异常处理机制不同,需要适当地处理和转换可能出现的异常,确保在两种语言间顺畅地传递错误信息。 总结来说,C#调用Java接口是一个相对复杂的过程,需要对Java和.NET平台...
在这个"**c#接口调用案例**"中,我们将探讨如何创建接口,实现接口,并在实际应用中调用接口方法。 首先,接口通过`interface`关键字声明,它只包含方法签名、属性和事件,而不包含任何实现细节。例如: ```csharp...
在IT行业中,跨语言通信是...这为混合编程提供了可能,允许开发者充分利用两种语言的优点,如Delphi的快速Windows开发和Java的跨平台能力。在实际应用中,可能还需要处理异常、内存管理等问题,以确保稳定性和安全性。
同时,需要注意到HTTPS的处理,使用证书认证和跳过认证两种方式,可以根据项目的需求选择合适的方式。 在本文中,我们还讨论了使用HttpClient时的证书认证和跳过认证问题,并提供了相关的代码示例。通过这些示例,...
在Java编程中,调用Web服务接口是一种常见的任务,尤其是当需要实现跨平台通信或集成不同系统时。本文将深入探讨如何使用Java调用WebService接口,以实例分析有参方法Add的使用技巧。 首先,我们需要了解WebService...
标题提到的“用java调用.net接口的方法”就是解决这个问题的一种技术实践。以下将详细讲解三种主要的实现方式,以及如何通过提供的源代码进行操作。 首先,我们要理解Java和.NET之间的互操作性通常依赖于Web服务...
在C#编程语言中,接口(Interface)是一种定义行为规范的类型,它允许类或结构体实现一组预定义的方法、属性、索引器和事件。接口调用是面向对象编程中一个重要的概念,用于实现多态性和代码复用。本篇文章将深入...
泛微9.0 REST接口调用是一个用于与泛微协同办公系统进行交互的重要技术,它允许开发者通过HTTP请求来执行各种操作,如注册、获取访问令牌、创建流程以及实现单点登录。下面是这些知识点的详细说明: 1. **注册接口*...
在这个场景中,我们关注的是如何利用Kettle传递动态参数并调用HTTP POST接口将数据入库。下面将详细阐述这个过程。 1. **Kettle简介** Kettle是一款开源的ETL工具,它提供了图形化的界面,使得用户可以通过拖拽和...
- 商家网站可以通过此接口提供担保交易和即时到账交易两种选择,以满足不同买家的需求。 - 这个接口特别适用于防止钓鱼网站,确保交易安全。 - 同样提供不同语言的代码实例供开发者下载和集成。 - 更新后的版本...
Java调用SOAP(Simple Object Access Protocol)接口是Web服务交互中的常见操作,SOAP是一种基于XML的协议,用于在Web上交换结构化的和类型化的信息。本案例主要关注如何使用Java来实现SOAP请求并获取响应,具体我们...
例如,使用Jersey的`Client`和`WebTarget`可以这样调用接口: ```java Client client = ClientBuilder.newClient(); WebTarget target = client.target("http://localhost:8080/myresource"); Response response = ...
在跨平台的软件开发中,有时我们需要...这个过程需要理解Java和C++之间的数据类型转换,以及如何在两种语言之间传递参数和返回值。熟练掌握JNI可以极大地扩展Java应用的功能,尤其是在需要高性能计算或利用硬件特性时。
本文主要讨论的是如何在PHP中调用Java类的两种方法,这对于融合这两种技术的优势具有重要意义。 首先,我们可以使用PHP的Java扩展模块。这个扩展允许PHP直接创建和操作Java对象,就像操作PHP类一样。例如,通过`new...