2017-03-20 32 views
1

はい、そこにはたくさんの質問があります。ほとんどが古いので、アンドロイドスタジオでコンパイルエラーが発生します。java(アンドロイドスタジオ)でHTTP POSTリクエストを送信

単純な投稿要求を行い、jsonでエンコードされたデータを送信したいと考えています。私は完全なJavaのn00bですので、私に同行してください。現在、この質問から取っ:ここSending json object via http post method in android

は、私が今持っているものです。

try { 
     URL url = new URL("https://myURL.com"); 
     String type = "application/json"; 
     HttpURLConnection httpURLConnection = (HttpURLConnection)url.openConnection(); 
     httpURLConnection.setDoOutput(true); 
     httpURLConnection.setRequestMethod("POST"); 
     httpURLConnection.setRequestProperty("Content-Type", type); 
     httpURLConnection.connect(); 

     JSONObject jsonObject = new JSONObject(); 
     jsonObject.put("myKey", "myValue"); 

     DataOutputStream wr = new DataOutputStream(httpURLConnection.getOutputStream()); 
     wr.writeBytes(jsonObject.toString()); 
     wr.flush(); 
     wr.close(); 

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

私はMainActivity.javaファイルでのonCreateでこのメソッドを呼び出しています。それはエラーなしでコンパイルされますが、実行するとクラッシュし、 "あなたのアプリは停止しました"という警告が表示されます。私は間違って何をしていますか?

+0

logcatのエラーの詳細? –

+0

マニフェストにインターネット権限を追加しましたか? http://stackoverflow.com/questions/2378607/what-permission-do-i-need-to-access-internet-from-an-android-application – nandsito

+0

@nandsito私のマニフェストは:それはあなたが意味することですか?もしそうなら、それはすでに – joey

答えて

-1

別のTryキャッチを作成する必要があると思います。

私のコードはこれです。

これが機能しない場合は、クラスをインポートする必要があります。 (赤いコードをクリックし、Alt + Enterをクリックします)。

これは私のコードです:

try { 
      URL url = new URL("https://myURL.com"); 
      String type = "application/json"; 
      HttpURLConnection httpURLConnection = (HttpURLConnection)url.openConnection(); 
      httpURLConnection.setDoOutput(true); 
      httpURLConnection.setRequestMethod("POST"); 
      httpURLConnection.setRequestProperty("Content-Type", type); 
      httpURLConnection.connect(); 

      JSONObject jsonObject = new JSONObject(); 
      jsonObject.put("myKey", "myValue"); 

      DataOutputStream wr = new DataOutputStream(httpURLConnection.getOutputStream()); 
      wr.writeBytes(jsonObject.toString()); 
      wr.flush(); 
      wr.close(); 

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


     } 
関連する問題