【问题标题】:Issue getting the azure translator to work with Android让 azure 翻译器与 Android 一起工作的问题
【发布时间】:2017-08-28 21:13:07
【问题描述】:

我的 android 应用程序很好地使用了旧的 microsoft Translator,但我有 让应用与新的认知服务一起工作时遇到问题。

首先,我获得了一个新的天蓝色翻译帐户,该帐户具有以下值 (这些不是真正的价值)

名称:MYTranslateAcct

资源组:翻译

订阅 ID:981h5ce7-7ac7-4f6f-b4a5-ff04dc9e4266

key1 d122230418a8479ab5c06f2f1fca664c

key2 39c1f187o9814f4e983jba9eedd2e2c7

我的第一步是尝试获取令牌。微软有关于做的文档 这在 JAVA 中但不是在 Android 环境中。我四处挖掘并拥有 把一些代码放在一起,但它不起作用。一个问题是, docs 使用我的帐户中没有的术语,例如“app-id”和 “钥匙”。我没有那些东西——我只有价值观列表 以上。

这是我的代码。 . .

class translateMessage extends AsyncTask<Void, Void, String>
{
    String retString;
    String inString = null;

    translateMessage(String inString) { this.inString = inString; }
    @Override
    protected String doInBackground(Void... arg0)
    {
        try
        {


            String key = "881b5ce7-9ac7-4f6f-b4a5-ff04dc9e3199";
            String authenticationUrl = "https://api.cognitive.microsoft.com/sts/v1.0/issueToken";
            HttpsURLConnection authConn = (HttpsURLConnection) new URL(authenticationUrl).openConnection();
            authConn.setRequestMethod("POST");
            authConn.setDoOutput(true);
            authConn.setRequestProperty("Ocp-Apim-Subscription-Key", key);
            IOUtils.write("", authConn.getOutputStream(), "UTF-8");       //following line of code gets the exception . . .
            String token = IOUtils.toString(authConn.getInputStream(), "UTF-8");  //this blows
       }
        catch (Exception e)
        {
            String myString = e.getMessage();
            String aString = "look at e";

        }
        return retString;
    }

    @Override
    protected void onPostExecute(String result)
    {
        String debugStr = result;
        translation.setText(result);
    }
}

以下是例外。 . .

java.io.FileNotFoundException:https://api.cognitive.microsoft.com/sts/v1.0/issueToken

我做错了什么? 有人知道任何使用新服务的 Android java 代码吗?

【问题讨论】:

    标签: java android language-translation microsoft-translator


    【解决方案1】:

    我在 Azure 支持上发布了这个,一个小时内有人给我打电话。我传错了钥匙。当您获得翻译认知帐户时,您将获得 Key1 和 Key2。它们中的任何一个都会起作用。因此,该代码是一个有用的示例,说明将获得令牌的工作代码。

    【讨论】:

      猜你喜欢
      • 2011-08-13
      • 2012-12-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-07-31
      • 2019-02-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多