`
liangoogle
  • 浏览: 278460 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

apache httpget 网络连接 读取数据

阅读更多

 

public class Test extends Activity implements OnClickListener {

    public Context context;

    private TextView textView1;

    DefaultHttpClient  httpClient ;

    public static String URL ="http://webservice.webxml.com.cn/WebServices/WeatherWebService.asmx?wsdl";

    private static final int TIMEOUT = 60;

    @Override

    public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.main);

        init();

        try {

            

            

            HttpParams paramsw = createHttpParams();

            httpClient = new DefaultHttpClient(paramsw);

            HttpGet httpGet=new HttpGet("http://webservice.webxml.com.cn/WebServices/WeatherWebService.asmx?wsdl");

                try {

                    HttpResponse httpResponse = httpClient.execute(httpGet); //连接服务器

                int httpCode = httpResponse.getStatusLine().getStatusCode();

                if (httpCode == HttpURLConnection.HTTP_OK) {

                    Header[] headers=httpResponse.getAllHeaders();

                    HttpEntity entity=httpResponse.getEntity();

                    Header header=httpResponse.getFirstHeader("content-type");

                    

                    //下面是从流中把字符串读出来了

                    InputStream inputStream=entity.getContent();

                    InputStreamReader inputStreamReader=new InputStreamReader(inputStream);

                    BufferedReader reader = new BufferedReader(inputStreamReader);//读字符串用的。

                    String inputLine = null;

                    String result = "";

                    // 使用循环来读取获得的数据,把数据都村到result中了

                    while (((inputLine = reader.readLine()) != null)) {

                        // 我们在每一行后面加上一个"\n"来换行

                        result += inputLine + "\n";

                    }

                    reader.close();//关闭输入流

                }else {

                    textView1.setText("Error Response"+httpResponse.getStatusLine().toString());

                }

            } catch (UnsupportedEncodingException e) {

                textView1.setText("网络连接错误UnsupportedEncodingException");

            } catch (ClientProtocolException e) {

                textView1.setText("网络连接错误ClientProtocolException");

            } catch (IOException e) {

                textView1.setText("网络连接错误IOException");

            }

        } finally {


            if (httpClient != null) {

                httpClient.getConnectionManager().shutdown();//最后关掉链接。

                httpClient = null;

            }

        }

    }

相关链接:http://www.eoeandroid.com/thread-13873-1-1.html

 

分享到:
评论

相关推荐

    apache,httpget,httpclient用到的包

    使用HttpGet,开发者可以指定一个URL来请求特定的数据,通常用于读取操作。 3. **HttpClient**:HttpClient是整个库的核心,它提供了发送HTTP请求和接收HTTP响应的能力。开发者可以通过创建HttpClient实例,配置...

    深入Android通过Apache HTTP访问HTTP资源示例代码

    HttpGet httpGet = new HttpGet("http://example.com/resource"); HttpPost httpPost = new HttpPost("http://example.com/resource"); ``` 5. **设置请求头** 可以通过`setHeader()`方法添加自定义的请求头: ...

    HttpGet.rar_Android httpget_HttpGet android_android_httpget_http

    在实际应用中,还应注意处理网络连接错误和异常,比如超时、无网络连接或者服务器返回错误状态码。此外,由于Android权限管理,应用还需要在`AndroidManifest.xml`中声明INTERNET权限: ```xml ``` 总的来说,这...

    org.apache.http jar包下载

    - `HttpGet`, `HttpPost`, `HttpPut`, `HttpDelete`等:代表不同的HTTP方法请求对象。 - `NameValuePair`和`BasicNameValuePair`:用于构建请求参数。 - `HttpEntity`:表示HTTP消息中的实体,可以是请求体或响应体...

    org.apache.http包

    `HttpConnection`代表网络连接,而`HttpEntity`表示HTTP消息体,可以是请求的实体内容或响应的数据。 4. `BasicHttpEntity`、`ChunkedStreamEntity`与`FileEntity` 这些是`HttpEntity`的实现,分别用于处理基本的...

    HttpGet.rar_httpget_java HttpGet_java download save

    标题中的"HttpGet.rar_httpget_java HttpGet_java download save"表明这是一个关于使用Java实现HttpGet方法进行文件下载并保存的示例。HttpGet是HTTP协议中的一个请求方法,常用于从服务器获取资源。在这个项目中,...

    apachehttp demo

    此外,`HttpPost`标签提示可能还涉及到上传数据,这通常用于提交表单或者上传文件,但在这个特定的"apachehttp demo"中并未涉及。 在开发过程中,确保遵循最佳实践,如使用try-with-resources语句处理资源关闭,...

    httppost和httpget需要的jar包

    HttpGet httpGet = new HttpGet("http://example.com/api"); ``` 4. **添加依赖**: 在Java项目中,你需要将这些JAR包添加到项目的类路径(Classpath)中,或者如果你使用的是Maven或Gradle等构建工具,可以在...

    HttpGet获取图片

    在Android中,我们通常使用Apache HttpClient库或者Android自带的HttpURLConnection来实现HttpGet请求。由于HttpClient在Android API 23后被弃用,这里我们将使用Android的HttpURLConnection。 以下是使用...

    org.apache.http相关jar包下载(httpcomponents-client-4.2.5-bin.tar)

    - 构建HttpGet或HttpPost对象:根据需要发送的请求类型创建请求对象,设置URL、请求头、参数等。 - 执行请求:调用HttpClient的`execute`方法发送请求。 - 处理响应:获取`HttpResponse`对象,检查状态码,读取响应...

    org.apache.http对应的完整lib和源码

    总之,这个压缩包为Java开发者提供了一站式的解决方案,用于处理HTTP通信,无论是简单的GET请求还是复杂的HTTP事务,Apache HttpClient都能提供强大的支持。通过深入学习和使用源码,开发者可以更好地优化其网络请求...

    HttpClient get、post 请求,抓取网络数据,jar包以及源码

    HttpClient库使得开发者能够轻松地实现网络数据的抓取和交换,这对于进行Web服务交互、网页爬虫或者任何需要从互联网获取数据的应用来说都非常有用。 ### GET请求 GET请求是最常见的HTTP方法,用于从服务器上获取...

    java学习资料,org.apache.http jar包工具

    在HttpClient中,可以通过`HttpGet`类来创建GET请求。设置URL后,调用`execute`方法执行请求,并从响应中获取数据。 - **POST请求**:POST请求常用于向服务器提交数据。使用`HttpPost`类创建POST请求,可以通过`...

    java中发送http包,包含get及post请求

    在实际应用中,应考虑处理可能出现的异常,如网络连接问题、超时等。可以通过捕获`IOException`和`HttpException`来进行错误处理。 5. **使用Java内置的HttpClient (Java 11+)** 如果使用的是Java 11或更高版本...

    apache架构设计原理剖析

    2. 请求读取:Apache接收并解析HTTP请求,包括请求行、头和数据。 3. 找到表示形式:根据请求的URL,Apache查找对应的资源,并决定如何处理。 4. 条件请求评估:支持HTTP的条件请求,如If-Match、If-None-Match等,...

    安卓7种网络连接方式

    在安卓应用开发中,网络连接是必不可少的一部分,用于与服务器进行数据交互,更新或获取信息。以下是关于"安卓7种网络连接方式"的详细解析: 1. **HTTPUrlConnection**: - `HttpURLConnection`是Java标准库中的一...

    org.apache.commons.httpclient

    2. **构建请求**:使用`HttpGet`或`HttpPost`对象创建HTTP请求,设置URL,添加请求头和请求参数。 3. **执行请求**:通过HttpClient的`execute`方法发送请求,并获取响应。 4. **处理响应**:解析HTTP响应状态码,...

    apache-httpclient4.4jar包

    - **HttpGet/HttpPost等方法**:这些预定义的HttpUriRequest子类用于创建GET、POST等基本HTTP请求。 - **HttpRequestBase**:这是所有自定义HTTP请求的基础类,允许你创建任意HTTP方法。 2. **连接管理**: - **...

    apache httpclient jar包

    - **HttpGet / HttpPost**:分别用于发送GET和POST请求,它们是HttpRequestBase的子类,可以设置URI、请求头等。 2. **请求执行**: - **HttpClient.execute()**:此方法用于执行HTTP请求,返回一个HttpResponse...

    org.apache.http.client.*;

    `HttpRequest`对象可以是`HttpGet`, `HttpPost`, `HttpPut`等,它们代表不同的HTTP方法。 3. **响应处理**:执行请求后,会得到`HttpResponse`对象,从中可以获取状态码、响应头和实体内容。`EntityUtils`类提供了...

Global site tag (gtag.js) - Google Analytics