Простая аутентификация с Google Natural Language API с использованием только клиентского JavaScript

Можно ли использовать Google Natural Language Cloud API, используя простой ключ API? Документы аутентификации, кажется, указывают на это, предлагая использовать его для тестирования cURL, но когда я пытаюсь использовать приведенный ниже код, я получаю сообщение 404 на URL.

<html>
  <head>
    <script src="https://apis.google.com/js/api.js"></script>
    <script>
      function start() {
        gapi.client.init({
          'apiKey': 'XXXXXXX'
        }).then(function() {
          return gapi.client.request({
            path: '/v1beta1/documents:analyzeSentiment',
            method: 'POST',
            body: {'document': {
                      'type': 'PLAIN_TEXT',
                      'content': 'ANALZE THIS, IS IT BAD?'
                   } 
            }  
          });
        }).then(function(resp) {
          console.log(resp.result);
        }, function(reason) {
          console.log('Error: ' + reason.result.error.message);
        });
      };
      gapi.load('client', start);
    </script>
  </head>
  <body>
    <div id="results"></div>
  </body>
</html>

1 ответ

Решение

Это работает, я просто указал неправильный метод:

<html>
  <head>
    <script src="https://apis.google.com/js/api.js"></script>
    <script>
      function start() {
        gapi.client.init({
          'apiKey': 'XXXX',
          'discoveryDocs': ['https://language.googleapis.com/$discovery/rest?version=v1beta1']
        }).then(function() {
          return gapi.client.language.documents.analyzeSentiment({
            // not sure how to put in a JSON object in here correctly
            'document': {
                      'type': 'PLAIN_TEXT',
                      'content': 'ANALZE THIS YOU MARVELLOUS PERSON'
                   }
          });
        }).then(function(resp) {
          console.log(resp.result);
        }, function(reason) {
          console.log('Error: ' + reason.result.error.message);
        });
      };
      gapi.load('client', start);
    </script>
  </head>
  <body>
    <div id="results"></div>
  </body>
</html>
Другие вопросы по тегам