HttpUrlConnectionGet方式請求

package com.bwie.httpurlconnectionget;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;

import com.bwie.httpurlconnectionget.Bean.MenuInfo;
import com.google.gson.Gson;

import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
import java.util.List;

public class MainActivity extends AppCompatActivity {

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

    public void btnHttpGet(View view){
        new Thread(){

            @Override
            public void run() {
                super.run();

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

    public void getCookInfo(){

        try {
            URL url=new URL("http://apis.juhe.cn/cook/query.php?menu=祕製紅燒肉&key=85ccc6561e8247986f378b20ef34589a");

            HttpURLConnection connection = (HttpURLConnection) url.openConnection();

            connection.setRequestMethod("GET");

            connection.setConnectTimeout(5000);
            connection.setReadTimeout(5000);

            int responseCode = connection.getResponseCode();

            if(responseCode==200){
                InputStream is = connection.getInputStream();

                ByteArrayOutputStream os = new ByteArrayOutputStream();

                byte[] buffer=new byte[1024];
                int len=0;

                while((len=is.read(buffer))!=-1){
                    os.write(buffer,0,len);
                }

                is.close();
                os.close();;

                String json=os.toString();

                Gson gson = new Gson();
                MenuInfo menuInfo = gson.fromJson(json, MenuInfo.class);

                List<MenuInfo.ResultBean.DataBean.StepsBean> steps = menuInfo.getResult().getData().get(0).getSteps();
                for (MenuInfo.ResultBean.DataBean.StepsBean step: steps) {
                    System.out.println(step.getStep());
                }
            }

        } catch (MalformedURLException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }


    }
}
發佈了40 篇原創文章 · 獲贊 11 · 訪問量 8230
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章