Я пытаюсь использовать Google TextToSpeech REST API на heroku.
У меня есть файл ключа служебной учетной записи, который отлично работает локально, но я не могу понять, как я мог бы заставить его работатьна Heroku, где не установлен Google Cloud SDK.То есть рассмотрим пример вызова curl из быстрого старта :
curl -H "Authorization: Bearer "$(gcloud auth application-default print-access-token) -H "Content-Type: application/json; charset=utf-8" --data "{
'input':{
'text':'Android is a mobile operating system developed by Google, based on the Linux kernel and designed primarily for touchscreen mobile devices such as smartphones and tablets.'
},
'voice':{
'languageCode':'en-gb',
'name':'en-GB-Standard-A',
'ssmlGender':'FEMALE'
},
'audioConfig':{
'audioEncoding':'MP3'
}
}" "https://texttospeech.googleapis.com/v1beta1/text:synthesize" > synthesize-output.txt
, который зависит от команды bash $(gcloud auth application-default print-access-token)
, которая, в свою очередь, зависит от устанавливаемого облачного SDK Google (яя установил версию mac локально).
Я изучил использование клиентской библиотеки ruby , которая, как мне кажется, обрабатывает аутентификацию под капотом, если в ней есть файл ключа через переменную GOOGLE_CLOUD_KEYFILE_JSON
env, но, похоже, он не поддерживает TextToSpeech.
Как я могу выполнять вызовы TextToSpeech API для Heroku?