此封装类可以直接调用接口
package com.google.zxing.client.android.util;
import java.io.IOException;
import org.apache.http.HttpResponse;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.util.EntityUtils;
import android.util.Log;
public class HttpUtil {
//声明Based URL常量
//public static final String BASE_URL="http://192.168.1.125:8080";
//服务端的
//public static final String BASE_URL="http://www.bai.cn";
//通过URL获取HttpGet对象
public static HttpGet getHttpGet(String url){
//实例化HttpGet
HttpGet request = new HttpGet(url);
return request;
}
//通过URL获取HttpPost对象
public static HttpPost getHttpPost(String url){
HttpPost request = new HttpPost(url);
return request;
}
//通过HttpGet获得HttpResponse对象
public static HttpResponse getHttpResponse(HttpGet request) throws ClientProtocolException, IOException{
HttpResponse response= new DefaultHttpClient().execute(request);
return response;
}
//通过HttpPost获得HttpResponse对象
public static HttpResponse getHttpResponse(HttpPost request) throws ClientProtocolException, IOException{
HttpResponse response = new DefaultHttpClient().execute(request);
return response;
}
/**
* 通过URL发送post请求,返回请求结果
*/
public static String queryStringForPost(String url){
//获得HttpPost实例
HttpPost request = HttpUtil.getHttpPost(url);
String result = null ;
try {
HttpResponse response =HttpUtil.getHttpResponse(request);
//判断是否请求成功
if(response.getStatusLine().getStatusCode()==200){
//获得返回结果
result = EntityUtils.toString(response.getEntity());
return result;
}
} catch (Exception e) {
e.printStackTrace();
result ="网络异常";
Log.i("Other", "走这里了?");
return result;
}
return null;
}
/**
* 通过HttpPost发送get 请求,返回请求结果
*/
public static String queryStringForGet(String url){
//获得HttpPost实例
HttpGet request = HttpUtil.getHttpGet(url);
String result = null ;
try {
HttpResponse response =HttpUtil.getHttpResponse(request);
//判断是否请求成功
if(response.getStatusLine().getStatusCode()==200){
//获得返回结果
result = EntityUtils.toString(response.getEntity());
return result;
}
} catch (Exception e) {
e.printStackTrace();
result ="网络异常";
return result;
}
return null;
}
/**
* 通过HttpPost发送Post请求,返回请求结果
*/
public static String queryStringForPost(HttpPost request){
String result = null ;
try {
//获取HttpResponse实例
HttpResponse response =HttpUtil.getHttpResponse(request);
//判断是否请求成功
if(response.getStatusLine().getStatusCode()==200){
//获得返回结果
result = EntityUtils.toString(response.getEntity());
return result;
}
} catch (Exception e) {
e.printStackTrace();
result ="网络异常";
Log.i("Other", "123sdfgds");
return result;
}
return null;
}
}
分享到:
相关推荐
接收邮件通常涉及POP3(邮局协议)或IMAP(Internet消息访问协议)协议,但在这个场景下,我们主要关注SMTP封装的邮件发送。 通过这样的封装,开发者可以更方便地在C++应用程序中集成网络功能,如创建自定义的下载...
封装类需要考虑线程安全,确保数据访问的正确性。 9. **重试机制**:在网络不稳定时,请求可能失败。良好的封装类会包含自动重试机制,以提高请求的成功率。 10. **并发请求**:为了提高效率,可能需要同时发起多...
c# http请求webapi接口封装类
总的来说,C++的Socket访问HTTP封装类是一种将底层的Socket操作与HTTP协议相结合的方式,使得开发者可以更方便地进行Web服务的访问,而无需关注底层网络通信的细节。通过这种方式,我们可以构建自己的HTTP客户端,...
Face++ V3 HTTP访问API是旷视科技(MeiTu Inc.)提供的一种人脸识别服务,它允许开发者通过HTTP协议调用来实现各种复杂的人脸识别功能。这个API封装了多种接口,包括人脸检测、人脸识别、人脸属性分析等,广泛应用于...
《CURL简易HTTP访问类封装在易语言中的实现》 在计算机编程中,网络通信是不可或缺的一部分,HTTP协议作为互联网上应用最为广泛的一种网络协议,它的访问与处理往往需要借助特定的工具或类库。CURL(Client URL ...
【基于STM32F103单片机,配合HTTP协议上传数据到服务器】的知识点主要涵盖以下几个方面: 1. **STM32F103单片机**:STM32是意法半导体(STMicroelectronics)推出的一种基于ARM Cortex-M3内核的微控制器系列。STM32...
我一直自己在用的Curl写的http访问模块,功能经过深度封装,使用并不复杂,支持同步和异步高并发访问,里面写了两个例子,一个火山论坛登陆POST例子,用的是同步访问,一个是简单的HTTP异步高并发访问网站。...
在iOS开发中,网络编程是不可回避的话题,而HTTP协议作为一种重要的网络通信协议,在移动客户端和PC端访问远程网络资源时被广泛使用。例如,我们可以在浏览器中输入URL访问网页,或者通过API接口在应用中获取远程...
标题中的“自己封装的C#实现HTTP请求的动态链接库,dll”指的是使用C#编程语言编写的HTTP客户端库,该库被封装成一个动态链接库(DLL)文件,供其他应用程序调用,以实现HTTP协议的网络通信功能。DLL是一种可重用的...
在这个场景下,封装类将数据库操作封装为WebService接口,使得远程客户端可以通过HTTP请求调用这些接口来执行数据库操作。这种方式的好处包括: 1. 跨平台:基于开放标准,可以在多种操作系统和编程语言中使用。 2....
SOAP(简单对象访问协议)是WebService中最常见的消息协议,它定义了消息结构和处理方式。WSDL(Web服务描述语言)用于描述WebService的接口,包括其提供的操作、参数和返回值。 在C++中调用WebService通常涉及以下...
总结来说,C#中的HTTP Get和POST请求可以通过`HttpClient`类进行封装,方便地集成到项目中,实现对网络资源的访问。这个封装类可以作为基础组件,根据项目需求进行扩展和定制,提高代码的可重用性和可维护性。
gSOAP是Steve Holzwarth开发的一个开源软件工具包,主要用于C和C++编程语言,它提供了一种高效且灵活的方式,用于实现SOAP(简单对象访问协议)协议。SOAP是一种基于XML的通信协议,用于在分布式环境中交换结构化和...
在“qt封装的http、https模块”中,我们可以看到它提供了对HTTP和HTTPS协议的高效支持,这对于网络通信至关重要,尤其是在需要与Web服务器交互的应用中。下面将详细讨论这个模块的特点和功能。 1. **多线程和异步...
6. **模块化编程**:易语言Http进度访问模块遵循模块化编程的思想,将HTTP访问功能封装成独立的模块,便于在不同的项目中复用。开发者只需引用该模块,即可轻松实现HTTP访问功能,提高了开发效率。 7. **事件驱动...
在进行网络封装帧的课程设计时,学生需要理解每个层次的作用,掌握如何在Java中实现网络通信,并能通过实际编程加深对网络协议的理解。同时,这个项目也涉及到了错误检测与纠正、网络拓扑结构、路由算法等知识,有助...
总结来说,"HTTP封装的消息中间件"是一个基于HTTP协议,采用长连接和阻塞模式实现的中间件,支持HTTP服务访问、消息订阅发布以及双向通信。它的设计旨在提供高效、灵活的消息传递能力,适用于需要实时通信和解耦的...
今天我们要讨论的是一款名为"HFS"的HTTP协议传输工具,它封装在一个名为"hfs.zip"的压缩包中,提供了便捷的跨系统文件上传和下载功能。 HTTP协议是互联网上的通信标准,用于从Web服务器传输超媒体信息到客户端,如...
URL中包含了协议类型、主机名、路径和可能的查询字符串,这些信息用于定位和访问特定资源。 2. **建立连接**:HTTP是无状态的,这意味着每次请求都需要建立新的TCP连接。对于HTTP,浏览器与服务器之间会通过三次...