2017-05-23 10 views
0

APIレスポンスを消費するJavaスクリプトをコードしています。しかし、私はそれを実行しようとしているときに私は悪い要求を取得しています。 JavaからAPIを使用する方法を教えてください。Javaを使用して残りのAPIを使用する

ここで私はJWTトークンを生成しようとしています.... 次のコードを見つけてください。..

public static void main(String[] args) throws Exception { 
    URL url = new URL("URL"); 


    HttpURLConnection connection = (HttpURLConnection) url.openConnection(); 
    connection.setRequestMethod("POST"); 
    connection.setDoInput(true); 
    connection.setDoOutput(true); 
    connection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); 
    connection.connect(); 
    try { 



     String jsonData1 = "{\"grant_type\":\"aksa\"}"; 
     String jsonData2 = "{\"username\":\"dkssdsk\"}"; 
     String jsonData3 = "{\"password\":\"xE2w04kC1a7S\"}"; 
     String jsonData4 = "{\"scope\":\"mksssl,/\"}"; 


     DataOutputStream output = new DataOutputStream(connection.getOutputStream()); 
       output.write(jsonData1.getBytes()); 
       output.write(jsonData2.getBytes()); 
       output.write(jsonData3.getBytes()); 
       output.write(jsonData4.getBytes());`` 
       output.flush(); 

       System.out.println(output); 


     // Read the response: 
     BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream()));`enter code here` 

     String line; 


     while ((line = reader.readLine()) != null) { 
      System.out.println(line); 
     } 
     reader.close(); 
    } catch (Exception e) { 

     System.out.println(e.getMessage()); 
    } 

    System.out.println("Response code:" + connection.getResponseCode()); 
    System.out.println("Response message:" + connection.getResponseMessage()); 
} 
} 

答えて

0

あなたのコードは書いている:

{"grant_type":"aksa"} 
{"username":"dkssdsk"} 
{"password":"xE2w04kC1a7S"} 
{"scope":"mksssl,/"} 

これが有効なJSONではありません。これを表示するために使用できるJSONバリデーター(コピー/貼り付け可能なWebページを含む)が多数あります。

郵便番号などのツールを使用してサービスをテストしてください。一旦それを働かせたら、あなたのプログラムがPostmanで設定された本体と同じ内容を書き込んでいることを確認してください。

+0

はい、郵便受けでこれをテストしましたが、正常に動作しています。あなたは私にJSONバリデータのリンクを送ることができますか? –

関連する問題