AndroidからローカルPC(asp.net)へPOSTリクエストする方法を教えてください
AndroidからローカルPCにPOSTリクエストを送信して、ローカルPC(asp.net)で受信したいと考えてますが下記の例外が発生します。
何が間違っているか、教えていただけますでしょうか?
発生している例外
failed to connect to ローカルPCのipアドレス (ローカルPCのポート番号) FROM Androidのipアドレス (Androidのポート番号)
該当のソースコード(下記のコードをMainActivityから呼び出して実行)
Java
1public class UploadTask extends AsyncTask<String, Void, String> { 2 3 private Listener listener; 4 5 // 非同期処理 6 @Override 7 protected String doInBackground(String... params) { 8 9 // 使用するサーバーのURLに合わせる 10 String urlSt = "http://xxx.x.x.x:55255/Home/value"; 11 12 HttpURLConnection httpConn = null; 13 String result = null; 14 String word = "word="+params[0]; 15 16 try{ 17 // URL設定 18 URL url = new URL(urlSt); 19 20 // HttpURLConnection 21 httpConn = (HttpURLConnection) url.openConnection(); 22 23 // request POST 24 httpConn.setRequestMethod("POST"); 25 26 // no Redirects 27 httpConn.setInstanceFollowRedirects(false); 28 29 // データを書き込む 30 httpConn.setDoOutput(true); 31 32 // 時間制限 33 httpConn.setReadTimeout(10000); 34 httpConn.setConnectTimeout(20000); 35 36 // 接続 37 httpConn.connect(); 38 39 try( 40 // POSTデータ送信処理 41 OutputStream outStream = httpConn.getOutputStream()) { 42 outStream.write( word.getBytes(StandardCharsets.UTF_8)); 43 outStream.flush(); 44 Log.d("debug","flush"); 45 } catch (IOException e) { 46 // POST送信エラー 47 e.printStackTrace(); 48 result = "POST送信エラー"; 49 } 50 51 final int status = httpConn.getResponseCode(); 52 if (status == HttpURLConnection.HTTP_OK) { 53 // レスポンスを受け取る処理等 54 result="HTTP_OK"; 55 } 56 else{ 57 result="status="+String.valueOf(status); 58 } 59 60 } catch (IOException e) { 61 e.printStackTrace(); 62 } finally { 63 if (httpConn != null) { 64 httpConn.disconnect(); 65 } 66 } 67 return result; 68 } 69}
試したこと
まず、ローカルPCのIPアドレスを調べて、実行してみましたが上記の例外が出ました。
そこでループバックアドレスや10.0.2.2で接続を試みるも例外が出ます。
補足情報(FW/ツールのバージョンなど)
Android9.0
Android Stadio3.2
回答1件
あなたの回答
tips
プレビュー