Перевод с использованием Microsoft Translator API Timeout
Я готов перевести конкретный текст на 3 разных языка, используя Microsoft Translator API. Я настроил его и, по-видимому, получаю ссылку, которая должна вести меня к разрывам перевода:
https://api.datamarket.azure.com/Data.ashx/Bing/MicrosoftTranslator/v1/Translate?Text=%27Osteopathy%27&From=%27en%27&To=%27nl%27&$format=Raw&$top=100
Я попробовал это также в моем терминале с curl, с авторизацией, но кажется, что никакого ответа не отправлено:
$ curl -H 'Authorization: Basic ***my authorization_key encoded in base64***' 'https://api.datamarket.azure.com/Data.ashx/Bing /MicrosoftTranslator/v1/Translate?Text=%27Osteopathy+for+Babies%27&From=%27en%27&To=%27nl%27&$format=Raw&$top=100'
Ответ от Microsoft Translator не приходит. Это просто время ожидания.
Тот же кусок кода работал несколько недель назад.
Что может быть причиной? Как это исправить?
2 ответа
Я попробовал тот же запрос, что и вы, и я получил ответ от сервера, но это 403 запрещено. Я не могу предположить, почему код больше не работает, но если вы также получите 403, возможно, стоило бы обновить ключ, возможно, срок его действия истек. В противном случае поведение API резко изменилось, трудно сказать без какой-либо официальной документации.
Тем не менее, вы можете попробовать API Microsoft Cognitive Services, установка заняла около 5 минут. Вам нужно будет использовать токены носителя OAuth вместо базовой аутентификации, но в любом случае это более безопасно.
Установочные документы https://www.microsoft.com/en-us/translator/getstarted.aspx
Получение токена http://docs.microsofttranslator.com/oauth-token.html
И некоторые примеры кода на github под MicrosoftTranslator/HTTP-Code-Samples
Рынок данных Azure закрыт - здесь есть дополнительная информация о переходе на Azure: https://translatorbusiness.uservoice.com/knowledgebase/articles/1078534-action-required-before-april-30-2017-microsoft-t