1

外部 API を使用して単純なテキスト翻訳を取得するために、Gson を使用して Java アプリケーションを開発しようとしています。以下はコードと出力です。HTTP ポスト URL の API キー用に指定された場所で API キーを使用しました。どうもありがとうございました。

// コード

HttpClient client = new DefaultHttpClient();
HttpPost post = new HttpPost("URL");

StringEntity input = new StringEntity(json);
input.setContentType("application/json");
post.setEntity(input);
HttpResponse response = client.execute(post);
System.out.println(response.getStatusLine());  

//出力

HTTP/1.1 415 Unsupported Media Type
4

1 に答える 1

1

ご覧のとおり404 Not Found、サーバーから応答を受け取りました。多くの場合、間違った URL にリクエストを送信することを意味します。

ドキュメントに示されているように、リクエストの https バージョンを使用する必要があります。したがって、正しい URL は次のようになりますhttps://translate.yandex.net/api/v1.5/tr.json/translate?lang=en-ru&key=API-KEY

編集

2 番目の問題については、投稿にヘッダーを追加してみてください。

post.addHeader("Content-Type", "application/json");

編集 2

ドキュメントを調べたところ、リクエストで本文を使用していません。次のように URL にテキストを追加するだけです。

https://translate.yandex.net/api/v1.5/tr.json/translate?text=live&lang=en-ru&key=API-KEY`

設定エンティティを削除することを忘れないでください。削除post.setEntity(input)と関連するものを意味します。

于 2018-06-16T12:54:24.860 に答える