2017-11-23 34 views
2

私はいくつかのプロジェクトで単純なAPIを使用していますが、アプリケーションからGETリクエストを作成すると応答コード400が返されます。問題を解決するための助けがあれば幸いです。HTTP応答リクエストを返すHTTP GETリクエスト

マイコード:

URL oracle = new URL(URL+"SELECT `name`, `username`, `email`, `position`, `status` FROM `"+pl.APIKEY+"` WHERE 1"); 
      HttpURLConnection con = (HttpURLConnection) oracle.openConnection(); 
      con.setRequestProperty("Content-Type", "text/plain; charset=utf-8"); 
      con.setRequestMethod("GET"); 
      con.setDoOutput(false); 
      BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream())); 


      String inputLine; 
      int size = 0; 
      String position=null ,user = null,email= null,name= null; 
      int status = 0; 
      while (true){ 
       inputLine = in.readLine(); 
       if(inputLine == null){ 
        break; 
       } 
       System.out.println(inputLine); 
       String[] input = inputLine.split("`"); 
       user = input[0]; 
       email = input[1]; 
       name = input[2]; 
       position= input[3]; 
       status = 0; 
      } 

私は私が間違っていた何のために周りを見回して、あなたは何を見た場合のおかげで再び、そう言うこと自由に感じなさいように、何も見つかりませんでした!

答えて

1

あなたのURLに問題があると思います。あなたはこの部分をエンコードする必要があります。

例えばこのため

使用URLEncoder、 "1 "+pl.APIKEY+" FROM nameusernameemailpositionstatusを選択":

URL oracle = new URL(URL+ URLEncoder.encode("SELECT `name`, `username`, `email`, `position`, `status` FROM `"+pl.APIKEY+"` WHERE 1"), "UTF-8")); 
+0

ありがとうございましたそれは私の問題を解決! –

+0

あなたは大歓迎です! –

関連する問題