JDK的get请求方式

layout:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.hanqi.testapp3.TestActivity2"
    android:orientation="vertical">

    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="JDK-Get方式"
        android:onClick="bt1_onClick"/>
    <EditText
        android:layout_width="match_parent"
        android:layout_height="200dp"
        android:id="@+id/et_2"/>
</LinearLayout>

Activity:

package com.hanqi.testapp3;

import android.app.ProgressDialog;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
import android.widget.Toast;

import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.URL;

public class TestActivity2 extends AppCompatActivity {

    EditText et_2;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_test2);
        et_2 = (EditText)findViewById(R.id.et_2);
    }
    //JDK的Get方式
    public void bt1_onClick(View v)
    {
        //1.进度对话框
        final ProgressDialog progressDialog = ProgressDialog.show(this,null,"正在加载,请稍后……");
        //2.开启子线程,访问网络
        new Thread(){
            public void run()
            {
                try {
                    //1—URL
                    URL url = new URL("http://www.baidu.com"+"?name=tom");

                    //2—URL获取连接
                    HttpURLConnection huc = (HttpURLConnection)url.openConnection();
                    //请求方式
                    huc.setRequestMethod("GET");
                    //设置超时
                    huc.setConnectTimeout(3000);
                    huc.setReadTimeout(3000);
                    //连接并发送请求
                    huc.connect();
                    //接收
                    //判断返回状态码  200
                    int code = huc.getResponseCode();
                    if (code == 200)
                    {
                        //接收数据
                        //输入流
                        InputStream is = huc.getInputStream();
                        //读取流
                        //1—byte数组
                        byte[] b = new byte[1024];
                        //2—读到数组的长度
                        int i = 0;
                        //3—数据
                        final StringBuilder sb1 = new StringBuilder();
                        while ((i = is.read(b))>0)
                        {
                            sb1.append(new String(b,0,i));
                        }
                        //释放资源
                        is.close();
                        huc.disconnect();
                        //通过主线程显示信息和关闭对话框
                        runOnUiThread(new Runnable() {
                            @Override
                            public void run() {
                                et_2.setText(sb1);
                                progressDialog.dismiss();
                            }
                        });
                    }
                    else
                    {
                        Toast.makeText(TestActivity2.this, "连接错误,返回的状态码 = "+code, Toast.LENGTH_SHORT).show();
                    }
                }
                catch (Exception e)
                {
                    e.printStackTrace();
                    progressDialog.dismiss();
                }
            }
        }.start();
    }
}

时间: 2024-10-16 05:53:51

JDK的get请求方式的相关文章

远程服务器存储之JDK的get请求方式

一.HTTP协议 1.超文本传输协议 2.支持客户端/服务器端模式 3.内容 1-请求协议 1>请求报文格式 1>-请求行:请求方式  请求资源名  协议版本号; 2>-请求消息头 3>-请求体 2>请求方式 1>-POST:请求内容在请求体里,以键=值的形式,键值对之间用&间隔;长度不受限制,保密性高. 2>-GET:请求内容在URL后面用?开始,以键=值的形式,键值对之间用&间隔:请求报文没有请求体:请求数据的长度受到浏览器的限制:请求数据保密

数据存储——远程服务器存储——JDK的get请求方式

一.HTTP协议 1.超文本传输协议 2.支持客户端/服务器端模式 3.内容 1-请求协议 1>请求报文格式 1>-请求行:请求方式  请求资源名  协议版本号; 2>-请求消息头 3>-请求体 2>请求方式 1>-POST:请求内容在请求体里,以键=值的形式,键值对之间用&间隔;长度不受限制,保密性高. 2>-GET:请求内容在URL后面用?开始,以键=值的形式,键值对之间用&间隔:请求报文没有请求体:请求数据的长度受到浏览器的限制:请求数据保密

Android——JDK的get请求方式

layout文件: 1 <?xml version="1.0" encoding="utf-8"?> 2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 3 xmlns:tools="http://schemas.android.com/tools" 4 android:layout_width="ma

javaweb解决post和get请求方式中文乱码问题(通用)

添加一个过滤器,解决乱码问题,代码如下: 1 import java.io.IOException; 2 import java.io.UnsupportedEncodingException; 3 import java.util.Map; 4 5 import javax.servlet.Filter; 6 import javax.servlet.FilterChain; 7 import javax.servlet.FilterConfig; 8 import javax.servlet

HTTP深入浅出之http请求和15中以上的请求方式

HTTP的介绍及其通信机制 HTTP(HyperText Transfer Protocol)是一套计算机通过网络进行通信的规则.计算机专家设计出HTTP,使HTTP客户(如Web浏览器)能够从HTTP服务器(Web服务器)请求信息和服务,HTTP目前协议的版本是1.1.HTTP是一种无状态的协议,无状态是指Web浏览器和Web服务器之间不需要建立持久的连接,这意味着当一个客户端向服务器端发出请求,然后Web服务器返回响应(response),连接就被关闭了,在服务器端不保留连接的有关信息.HT

jQuery中ajax的4种常用请求方式

jQuery中ajax的4种常用请求方式: 1.$.ajax()返回其创建的 XMLHttpRequest 对象. $.ajax() 只有一个参数:参数 key/value 对象,包含各配置及回调函数信息.详细参数选项见下. 如果你指定了 dataType 选项,请确保服务器返回正确的 MIME 信息,(如 xml 返回 "text/xml"). 实例: 保存数据到服务器,成功时显示信息. $.ajax({ type: "post", dataType: "

UI13-GET POST 同步,异步-代理 Block请求方式。

http://ipad-bjwb.bjd.com.cn/DigitalPublication/publish/Handler/APINewsList.ashx?date=20131129&startRecord=1&len=5&udid=1234567890&terminalType=Iphone&cid=213 http://project.lanou3g.com/teacher/yihuiyun/lanouproject/activitylist.php 两个接

Ajax中的get和post两种请求方式的异同

Ajax中我们经常用到get和post请求.那么什么时候用get请求,什么时候用post方式请求呢? 在做回答前我们首先要了解get和post的区别.   1. get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到.post是通过HTTP post机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址.用户看不到这个过程.   2. 对于get方式,服务器端用Request.QueryS

http Get和Post请求方式

string postURL ="http://xxxxx.ashx"; List<string> paramName = new List<string>(); List<string> paramValue = new List<string>(); paramName.Add("userName"); paramName.Add("password"); paramValue.Add(&quo