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

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

使用應用程序發送 HTTP 請求 - AndroidStudio

使用應用程序發送 HTTP 請求 - AndroidStudio

瀟瀟雨雨 2021-11-24 18:49:24
我想在按下按鈕到 ESP8266 時從我的 android 應用程序發送 HTTP 請求,該 ESP8266 正在等待任何網頁被訪問,但是我希望我的 android 應用程序實際上沒有打開網頁,而只是“發送一個 HTTP要求”現在我正在使用;startActivity(new Intent(Intent.ACTION_QUICK_VIEW, Uri.parse("http://192.168.1.201/onled")));它正在工作,但顯然它正在打開網頁......有人對如何解決我的問題有好的建議嗎?我是 Java 新手。
查看完整描述

3 回答

?
慕勒3428872

TA貢獻1848條經驗 獲得超6個贊

new AsyncTask<Void,Void,Void>(){

        private Exception exception;

        @Override

        protected Void doInBackground(Void... voids) {

            try{

                URL url= new URL("http://yourserveraddress/resource.extension");

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

                //write additional POST data to url.getOutputStream() if you wanna use POST method 

            }catch (Exception ex){

                this.exception=ex;

            }

            return null;

        }


        @Override

        protected void onPostExecute(Void aVoid) {

            super.onPostExecute(aVoid);

        }

    }.execute();


查看完整回答
反對 回復 2021-11-24
?
慕桂英546537

TA貢獻1848條經驗 獲得超10個贊

有很多方法可以從應用程序發送 HTTP 請求。例如使用HttpURLConnectionwithGET方法,您可以按如下方式進行:


 StringBuilder content = new StringBuilder();

        try {

            URL u1 = new URL(url);

            HttpURLConnection uc1 = (HttpURLConnection) u1.openConnection();

            if (uc1.getResponseCode()==HttpURLConnection.HTTP_OK) {


                InputStream is = uc1.getInputStream();

                BufferedReader br = new BufferedReader(new InputStreamReader(is, Charset.forName("UTF-8")));

                String line;

                while ((line = br.readLine()) != null) {


                    content.append(line).append("\n");


                }


            }//other codes


查看完整回答
反對 回復 2021-11-24
?
回首憶惘然

TA貢獻1847條經驗 獲得超11個贊

您應該創建 HTTP 連接和 HTTP 請求。

您可以通過以下幾種方式做到這一點:

請記住,發送 HTTP 請求是非確定性操作,您應該在單獨的非 UI 線程中執行它以保持 UI 暢通。您可以通過AsyncTask 來完成,這是最簡單的解決方案,但您也可以將RxJavaRxAndroid或其他方法一起使用。


查看完整回答
反對 回復 2021-11-24
  • 3 回答
  • 0 關注
  • 287 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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