2016-12-07 6 views
0

を:Googleの音声APIエラー

curl -X POST \ 
--data-binary @'1.wav' \ 
--header 'Content-Type: audio/l16; rate=16000;' \ 
'https://www.google.com/speech-api/v2/recognize?output=json&lang=he-IL&key=THE_KEY' 

を私はエラーを取得しています:

Your client does not have permission to get URL /speech-api/v2/recognize?output=json&lang=he-IL&key=THE_KEY from this server. Invalid key. That’s all we know.

私が生成した鍵が(制限はありません音声APIに対応しています)。
私はサーバーのIPアドレスを追加しても、同じエラーが発生しました。

私が今までに見つけた結果は、クロムクライアントに関連しています... Im on shell。

おかげ

+0

はあなたがここからAPIキーを生成していてもよろしいです::Nは、手順1で設定したリクエストhttps://developers.google.com/maps/documentation/javascript/get- api-key#keyとあなたの要求にそのキーを渡していますか? – nitinsh99

+0

@ nitinsh99、これは地図ではありません。これはgoogleの音声APIです。はい、私は鍵を渡しており、ここにそれを公開することはできません – SexyMF

答えて

0
  1. 次のテキストを持つJSON要求ファイルを作成し、同期request.jsonプレーンテキストファイルとして保存します。このJSONスニペットがあることを示し

    { 'config': { 'encoding':'FLAC', 'sampleRate': 16000, 'languageCode': 'en-US' }, 'audio': { 'uri':'gs://your-gcloud-bucket/audio.wav' } }

    オーディオファイルはWAVエンコード形式、16000 Hzのサンプルレート、オーディオファイルは指定されたURIでGoogle Cloud Storageに保存されています。オーディオファイルは一般公開されているため、ファイルにアクセスするための認証情報は必要ありません(APIを使用するには認証情報が必要です)。あなたのサービスアカウントに

  2. 認証、あなたのservice account key fileの場所を渡す:

    $ gcloud auth activate-service-account --key-file=service-account-key-file

  3. あなたのサービスアカウントを使用してauthorizatonトークンを取得します。

    にカール

    $ gcloud auth print-access-token access_token

  4. 使用スピーチをする:syncrecognognizeリクエスト、あなたが印刷したアクセストークン、JSOのファイル名を渡す

    $ curl -s -k -H "Content-Type: application/json" \ -H "Authorization: Bearer access_token" \ https://speech.googleapis.com/v1beta1/speech:syncrecognize \ -d @sync-request.json

+0

whats 'gs://'?私は私のファイルを 'http://'に保存しました。 – SexyMF

+0

そして 'gcloud'とは何ですか?私はカールからすべてをすることができないのですか?ありがとう – SexyMF

+1

@SexyMF 'gs://'はGoogle Cloud Storageバケットからファイルを読みたいことを示す内部プロトコルの接頭辞です。これは60秒以上のオーディオを処理する場合には必須ですが、 'audio 'の' uri'と 'sync'のbase-64文字列を変更することで、オーディオのBase64エンコード表現を投稿することでCloud Storageをスキップすることができます-request.json'ファイル。 –

関連する問題