亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

【Android網絡編程】使用HttpUrlConnect獲取網絡數據

標簽:
Android

Android必须新开线程来访问网络,在该线程中一般有两种方式来实现获取网络数据
       1、HttpClient
       2、HttpUrlConnect

这个帖子记录关于HttpUrlConnect的使用。
        HttpurlConnect为java类库中自带的访问网络的api
使用HttpurlConnect一般需要以下几步:
         1、创建Url对象
             Url url = new Url("http://192.168.137.1:8080/androidhttpservice/httpclientservlet");
        2、得到HttpURLConnect对象
             HttpURLConnection httpURLConnection = (HttpURLConnection)url.openConnection();
        3、设置参数
              httpURLConnection.setConnectTimeout(3000);//设置超时
              httpURLConnection.setRequestMethod("GET");//设置请求方式
              httpURLConnection.setDoInput(true);//设置使用输入流
              httpURLConnection.setDoOutput(true);//设置使用输出流
              httpURLConnection.setUseCaches(false);//不使用缓存
              httpURLConnection.setInstanceFollowRedirects(false);
         4、设置请求参数
              httpURLConnection.getOutputStream().write("username=admin".getBytes());
         5、得到返回的数据
              InputStream in = httpURLConnection.getInputStream();
代码:

public class MainActivity extends Activity {


    private Button button;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        button  = (Button)findViewById(R.id.button);

        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                new Thread(new Runnable() {
                    @Override
                    public void run() {

                        try{
                            URL url = new URL("http://192.168.137.1:8080/androidhttpservice/httpclientservlet");
                            URLConnection connection = url.openConnection();

                            HttpURLConnection httpURLConnection = (HttpURLConnection)connection;
                            httpURLConnection.setConnectTimeout(3000);
                            httpURLConnection.setRequestMethod("POST");
                            httpURLConnection.setDoInput(true);
                            httpURLConnection.setDoOutput(true);

                            httpURLConnection.setInstanceFollowRedirects(false);
                            httpURLConnection.setUseCaches(false);

                            httpURLConnection.getOutputStream().write("username=admin".getBytes());

                            InputStream in = httpURLConnection.getInputStream();

                            if(httpURLConnection.getResponseCode() == HttpURLConnection.HTTP_OK){
                                String data = "";
                                byte[] b = new byte[1024];
                                int len ;
                                while((len = in.read(b))!=-1){
                                    data += new String(b,0,len);
                                }
                                in.close();
                                Log.d("data",data);
                            }
                        }catch (Exception e){

                        }
                    }
                }).start();
            }
        });
    }

}

logcat输出:

5be7de6400019c6006320027.jpg

原文链接:http://www.apkbus.com/blog-411923-59014.html

點擊查看更多內容
TA 點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
  • 推薦
  • 評論
  • 收藏
  • 共同學習,寫下你的評論
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消