package hasau; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.net.HttpURLConnection; import java.net.InetSocketAddress; import java.net.Proxy; import java.net.URL; import java.util.ArrayList; import java.util.List; import org.apache.http.HttpEntity; import org.apache.http.HttpHost; import org.apache.http.HttpResponse; import org.apache.http.NameValuePair; import org.apache.http.client.ClientProtocolException; import org.apache.http.client.HttpClient; import org.apache.http.client.entity.UrlEncodedFormEntity; import org.apache.http.client.methods.HttpGet; import org.apache.http.client.methods.HttpPost; import org.apache.http.client.methods.HttpUriRequest; import org.apache.http.conn.params.ConnRouteParams; import org.apache.http.impl.client.DefaultHttpClient; import org.apache.http.message.BasicNameValuePair; import org.apache.http.protocol.BasicHttpContext; import org.apache.http.protocol.ExecutionContext; import org.apache.http.protocol.HttpContext; import org.apache.http.util.EntityUtils; import org.jsoup.Jsoup; import org.jsoup.nodes.Document; /** * * @author hasau * 2010-11-5 上午09:51:25 */ public class httpclientStudy { public static void main(String[] args) throws Exception { // javaHttpClient1(); httpClientCookies(); } private static void httpClientCookies() throws Exception{ HttpClient httpClient = new DefaultHttpClient(); HttpContext httpContext = new BasicHttpContext(); HttpGet get = new HttpGet("http://localhost:8080/sgcms/back/logout.do"); HttpResponse httpResponse = httpClient.execute(get, httpContext); HttpEntity entity = httpResponse.getEntity(); String charSet = null; if(entity!=null){ charSet = EntityUtils.getContentCharSet(entity); System.out.println(charSet); InputStream is = entity.getContent(); BufferedReader br = new BufferedReader(new InputStreamReader(is,"utf-8")); String text = null; String line = br.readLine(); StringBuffer sb = new StringBuffer(); while(line != null){ sb.append(line+"\n"); line = br.readLine(); } is.close(); } HttpPost httpPost = new HttpPost("http://localhost:8080/sgcms/back/ajaxJsonLogin.do'"); List<NameValuePair> list = new ArrayList<NameValuePair>(); list.add(new BasicNameValuePair("admin.loginName","hasau")); list.add(new BasicNameValuePair("admin.passwordMd5","hasau")); list.add(new BasicNameValuePair("admin.authCode","")); httpPost.setEntity(new UrlEncodedFormEntity(list,charSet)); httpResponse = httpClient.execute(httpPost); entity = httpResponse.getEntity(); if(entity != null){ InputStream is = entity.getContent(); BufferedReader br = new BufferedReader(new InputStreamReader(is,"utf-8")); String line = br.readLine(); String text = null; StringBuffer sb = new StringBuffer(); while(line != null){ sb.append(line+"\n"); line=br.readLine(); } System.out.println(sb.toString()); } httpClient.getConnectionManager().shutdown(); } private static void javaHttpClient1() throws ClientProtocolException, IOException{ HttpClient httpClient = new DefaultHttpClient(); httpClient.getParams().setParameter(ConnRouteParams.DEFAULT_PROXY, new HttpHost("121.12.249.207",3128)); HttpGet get =new HttpGet("http://www.baidu.com"); HttpContext context = new BasicHttpContext(); HttpResponse response = httpClient.execute(get,context); HttpHost target = (HttpHost) context.getAttribute(ExecutionContext.HTTP_TARGET_HOST);//http://localhost:8080 HttpUriRequest request = (HttpUriRequest) context.getAttribute(ExecutionContext.HTTP_REQUEST);// cms/back/hasau.jsp HttpEntity entity = response.getEntity(); String charset = EntityUtils.getContentCharSet(entity); System.out.println(charset); if(entity!=null){ InputStream is = entity.getContent(); BufferedReader buf = new BufferedReader(new InputStreamReader(is,"gbk")); String content=""; String line = buf.readLine(); while(line!=null){ content += line+"\n"; line=buf.readLine(); } System.out.println(content); is.close(); } httpClient.getConnectionManager().shutdown(); } private static void javaNetJsoup() throws IOException { String key = "http://www.baidu.com"; URL url = new URL(key); Proxy proxy = new Proxy(Proxy.Type.HTTP,new InetSocketAddress("192.168.12.32",80)); HttpURLConnection con = (HttpURLConnection)url.openConnection(proxy); con.setFollowRedirects(false); con.setRequestMethod("GET"); BufferedReader buf = new BufferedReader(new InputStreamReader(con.getInputStream(),"gbk")); InputStream in = url.openStream(); buf = new BufferedReader(new InputStreamReader(in,"gbk")); String line = buf.readLine(); String content = ""; while(line!=null){ content +=line; line=buf.readLine(); } in.close(); System.out.println(content); Document document = Jsoup.parse(url, 1000*10); System.out.println(document.html()); } }
相关推荐
5. **执行请求并处理响应**:通过HttpClient的execute方法发送请求,然后获取HttpRespose对象。从响应中,我们可以读取HTTP状态码和响应体。对于SOAP,响应通常也是一个XML格式的SOAP消息,需要解析这个消息以获取...
3. **发起请求**:使用Java的HTTP客户端库,如Apache HttpClient或者Java内置的HttpURLConnection,向配置好的REST接口发送请求。在这个过程中,你需要设置HTTP头信息,比如Content-Type(通常为application/json)...
在IT行业中,远程请求URL并发送XML参数是常见的数据交互方式,主要应用于Web服务、API接口调用等场景。下面将详细介绍两种实现这一操作的方法,并结合`SyncDemo`这一示例进行阐述。 方法一:使用Java的...
在IT行业中,Mock和HTTPClient是两个非常关键的概念,...Mocking帮助我们创建可靠的测试环境,而HTTPClient则提供了一种高效的方式与远程服务器进行通信。通过学习和实践,我们可以提升代码质量,确保项目稳定运行。
POST请求用于向服务器发送数据,通常用于创建新资源或更新已有资源。执行POST请求的步骤如下: - 创建HttpWebRequest实例,设置URL属性。 - 设置RequestMethod为"POST"。 - 设置ContentType属性,如...
5. 使用Feign客户端:在业务代码中,通过Feign接口调用远程服务,Feign会自动处理请求的构建、发送和响应的解析。 集成Nacos和Feign后,我们可以实现以下优势: 1. 动态配置:通过Nacos,服务的配置可以实时更新,...
例如,你可以配置一个路由,当接收到特定的消息时,使用HTTP客户端向远程服务器发起请求,并处理返回的数据。以下是一个简单的Camel路由示例,展示了如何使用HTTP组件: ```java from("direct:start") .setHeader...
4. 将结果返回给客户端:将查询结果转换为XML或自定义数据结构,通过返回值发送回客户端。 5. 在客户端调用WebService:使用.NET的HttpClient或SoapHttpClient类,根据WSDL定义调用WebService方法,获取并处理返回...
- **返回值**: 功能执行后可能会产生一个或多个返回值,这些返回值表示了功能执行的结果状态和可能的数据输出。 ### 2. XCAP (XINS Capabilities Protocol) XINS使用XCAP(XINS Capabilities Protocol)作为其通信...
- **调用服务方法**:通过代理类的实例调用Web服务提供的方法,传递参数并接收返回值。 **3. 使用JAX-WS的步骤** - **定义服务接口**:在Java中定义一个接口,这个接口对应于WebService的服务端点接口(SEI)。 ...
2. 发送请求:使用HttpURLConnection或Apache HttpClient库发送SOAP请求到WebService的URL。 3. 处理响应:接收并解析SOAP响应,通常是XML格式,然后转换为相应的Java对象。 4. 显示结果:将解析后的数据展示在...
2. **发送SOAP请求**:使用Java的HTTP客户端(如Apache HttpClient或Java自带的URLConnection)将SOAP请求发送到目标服务器。 3. **处理SOAP响应**:服务器收到请求后,根据SOAP消息的内容执行相应的逻辑处理,最后...
JSON-RPC(JavaScript Object Notation Remote Procedure Call)是一种轻量级的远程过程调用协议,主要用来在客户端和服务器之间进行数据交换。它的设计思想是简单、直接,以JSON(JavaScript Object Notation)作为...
在Android开发中,Web服务(通常指WebService)是一种允许应用程序之间进行交互的技术,它使得移动应用,如Android应用,能够与远程服务器进行数据交换。在本案例中,开发者遇到了一个常见的问题:`java.lang....
1. **客户端向服务端发起请求**:客户端通过建立的TCP连接向服务端发送数据。 2. **服务端处理并响应**:服务端接收到请求,进行相应的业务处理,然后将响应数据回传给客户端。 3. **服务端关闭连接**:在某些设计...
### HttpClient远程接口文件上传 1. **HttpClient介绍**:Apache HttpClient是一个强大的HTTP客户端库,用于执行HTTP请求。它支持多种HTTP方法如GET、POST、PUT,还可以处理文件上传、超时、重试等复杂需求。 2. *...
这些方法使用Java对象作为参数和返回值,对象会被自动转换为SOAP消息进行发送和接收。在Visual Web应用中,可以在JSF页面或后台Bean中直接调用这些方法。 **5. 使用RESTful Web服务** 对于RESTful服务,通常使用...
这些接口涵盖了语音、视频、消息等多种通信功能,适用于企业内部协作、客户服务、远程办公等场景。 2. **UC2.2服务端接口** UC2.2服务端接口是eSDK UC中的一组关键接口,主要用于服务端与客户端之间的通信。这些...
- **调用Web服务**:通过代理类的方法调用Web服务的相应操作,传入参数并接收返回值。 5. **其他可能需要的jar包**: 在实际应用中,除了axis.jar和wsdl4j.jar,可能还需要其他依赖,例如用于处理XML的JAXB库...