`

HTTP访问协议封装

 
阅读更多

此封装类可以直接调用接口

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;
}

}

分享到:
评论

相关推荐

    http、smtp协议封装

    接收邮件通常涉及POP3(邮局协议)或IMAP(Internet消息访问协议)协议,但在这个场景下,我们主要关注SMTP封装的邮件发送。 通过这样的封装,开发者可以更方便地在C++应用程序中集成网络功能,如创建自定义的下载...

    封装好的HTTP请求类,基于QT

    封装类需要考虑线程安全,确保数据访问的正确性。 9. **重试机制**:在网络不稳定时,请求可能失败。良好的封装类会包含自动重试机制,以提高请求的成功率。 10. **并发请求**:为了提高效率,可能需要同时发起多...

    c# http请求webapi接口封装类

    c# http请求webapi接口封装类

    c++的socket访问http封装类

    总的来说,C++的Socket访问HTTP封装类是一种将底层的Socket操作与HTTP协议相结合的方式,使得开发者可以更方便地进行Web服务的访问,而无需关注底层网络通信的细节。通过这种方式,我们可以构建自己的HTTP客户端,...

    face++ v3 http访问API的官网封装

    Face++ V3 HTTP访问API是旷视科技(MeiTu Inc.)提供的一种人脸识别服务,它允许开发者通过HTTP协议调用来实现各种复杂的人脸识别功能。这个API封装了多种接口,包括人脸检测、人脸识别、人脸属性分析等,广泛应用于...

    CURL 简易http访问类封装-易语言

    《CURL简易HTTP访问类封装在易语言中的实现》 在计算机编程中,网络通信是不可或缺的一部分,HTTP协议作为互联网上应用最为广泛的一种网络协议,它的访问与处理往往需要借助特定的工具或类库。CURL(Client URL ...

    CurlHTTP访问模块,Curl深度封装,重写异步高并发框架

    我一直自己在用的Curl写的http访问模块,功能经过深度封装,使用并不复杂,支持同步和异步高并发访问,里面写了两个例子,一个火山论坛登陆POST例子,用的是同步访问,一个是简单的HTTP异步高并发访问网站。...

    数据库操作的封装类,可以访问SQL与Ascess,并且可以通过WebService远程访问数据库

    在这个场景下,封装类将数据库操作封装为WebService接口,使得远程客户端可以通过HTTP请求调用这些接口来执行数据库操作。这种方式的好处包括: 1. 跨平台:基于开放标准,可以在多种操作系统和编程语言中使用。 2....

    自己封装的C#实现HTTP请求的动态链接库,dll

    标题中的“自己封装的C#实现HTTP请求的动态链接库,dll”指的是使用C#编程语言编写的HTTP客户端库,该库被封装成一个动态链接库(DLL)文件,供其他应用程序调用,以实现HTTP协议的网络通信功能。DLL是一种可重用的...

    gSOAP 对于soap协议的封装

    gSOAP是Steve Holzwarth开发的一个开源软件工具包,主要用于C和C++编程语言,它提供了一种高效且灵活的方式,用于实现SOAP(简单对象访问协议)协议。SOAP是一种基于XML的通信协议,用于在分布式环境中交换结构化和...

    qt封装的http、https模块

    在“qt封装的http、https模块”中,我们可以看到它提供了对HTTP和HTTPS协议的高效支持,这对于网络通信至关重要,尤其是在需要与Web服务器交互的应用中。下面将详细讨论这个模块的特点和功能。 1. **多线程和异步...

    易语言Http进度访问模块

    6. **模块化编程**:易语言Http进度访问模块遵循模块化编程的思想,将HTTP访问功能封装成独立的模块,便于在不同的项目中复用。开发者只需引用该模块,即可轻松实现HTTP访问功能,提高了开发效率。 7. **事件驱动...

    基于STM32F103单片机,配合HTTP协议上传数据到服务器

    【基于STM32F103单片机,配合HTTP协议上传数据到服务器】的知识点主要涵盖以下几个方面: 1. **STM32F103单片机**:STM32是意法半导体(STMicroelectronics)推出的一种基于ARM Cortex-M3内核的微控制器系列。STM32...

    计算机网络封装帧课程设计

    在进行网络封装帧的课程设计时,学生需要理解每个层次的作用,掌握如何在Java中实现网络通信,并能通过实际编程加深对网络协议的理解。同时,这个项目也涉及到了错误检测与纠正、网络拓扑结构、路由算法等知识,有助...

    HTTP封装的消息中间件

    总结来说,"HTTP封装的消息中间件"是一个基于HTTP协议,采用长连接和阻塞模式实现的中间件,支持HTTP服务访问、消息订阅发布以及双向通信。它的设计旨在提供高效、灵活的消息传递能力,适用于需要实时通信和解耦的...

    hfs.zip http协议传输工具

    今天我们要讨论的是一款名为"HFS"的HTTP协议传输工具,它封装在一个名为"hfs.zip"的压缩包中,提供了便捷的跨系统文件上传和下载功能。 HTTP协议是互联网上的通信标准,用于从Web服务器传输超媒体信息到客户端,如...

    易语言HTTP访问对象演示

    易语言提供了HTTP访问对象,该对象封装了HTTP协议的通信过程,开发者可以通过调用其方法来执行HTTP请求。主要的方法有`打开URL`(发起请求)、`读取数据`(获取响应数据)、`关闭连接`(结束会话)等。这些方法的...

    Go-微信网页版协议解析并使用Golang封装构建微信个人号机器人

    本主题聚焦于“Go-微信网页版协议解析并使用Golang封装构建微信个人号机器人”,这涉及到对微信API的理解、协议解析以及Golang编程技巧。 首先,微信个人号接口允许开发者通过特定的协议与微信服务器进行交互,实现...

Global site tag (gtag.js) - Google Analytics