0

我试图使用 Microsoft-translator-API 制作文本翻译器应用程序,但我无法从该 API 收到任何响应,我总是收到以下消息:

[microsoft-translator-api] 检索翻译时出错:无法解析主机“datamarket.accesscontrol.windows.net”:没有与主机名关联的地址

即使我给出了正确的客户 ID 和客户秘密 ID。

我尝试了这个链接,但我不知道将 JSON-Simple.jar 文件放在哪里。我也尝试了这个链接,但仍然没有成功。我在下面粘贴我的代码:

public String translateText() throws Exception {
    Translate.setClientId("whateveritis");
    Translate.setClientSecret("whateveritis");

     translatedText = Translate.execute(
            userText.getText().toString(),
            languages[sEnterLan.getSelectedItemPosition()],
            languages[sTransLan.getSelectedItemPosition()]);

    Language detectedLanguage = Detect.execute(userText.getText()
            .toString());
    this.detectedLanguage = detectedLanguage.getName(Language.ENGLISH);

    return translatedText;
}

通过调用上述函数,我可以将翻译后的文本接收到一个字符串变量中,但每次我得到一个异常。

4

1 回答 1

0

boatmeme/microsoft-translator-java-api根据您的代码和参考链接,我认为您正在为 MS Azure 翻译 API使用第三方 Java 包装器。但是,它是一个旧的 Java 包装器,它包装了来自旧站点Azure datamarket的旧且不可用的 API 。该站点有通知,所有源 API 已迁移到 Azure 订阅。

DataMarket 和 Data Services 即将停用,并将在 2016 年 12 月 31 日之后停止接受新订单。现有订阅将从 2017 年 3 月 31 日起停用和取消。如果您想继续服务,请联系您的服务提供商以获取选项。

所以我建议您可以尝试参考我对其他 SO 线程Microsoft Translator API Java 的回答,如何使用 Azure 获取客户端新 ID 以在 Azure 门户上为 Translator Text API 创建认知服务并通过新的 REST API 使用它.

希望能帮助到你。

于 2017-08-07T07:17:45.427 回答