1

我正在尝试使用 Gson 开发 Java 应用程序以使用外部 api 来获取简单的文本翻译。下面是代码和输出。我已经在 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.

编辑

关于第二个问题,尝试为您的帖子添加标题。

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 回答