Indodax API: авторизация для частного API с помощью Google App Script - PullRequest
0 голосов
/ 11 октября 2019

Я хотел бы получить данные из API Indodax.com. Я пытаюсь вызвать "частные" методы. (Те, кто должен быть аутентифицирован)

Как предписано в документации здесь: https://indodax.com/downloads/BITCOINCOID-API-DOCUMENTATION.pdf

Они дали пример кода для php, который работает нормально, я уже попробовал.

Но я хочу преобразовать этот php-код, как это сделать в скрипте Google.

Вот мой код скрипта Google, который у меня есть, но мне показалось, что в коде чего-то не хватает, поэтому яя не получаю результат.

это код скрипта Google:

thx

enter code here

  function indodax () { 
    var key = "private-key";
   var secret = "secret-key";


  var date = new Date();
  var nonce = Math.floor((date.getTime()/1000)).toString();
  var post_data = "nonce=" + nonce; 

  var url = "https://indodax.com"; 
   var path = url + "/tapi/";

  const sign = getMessageSignature(path, secret, key, nonce);
  var url = url + "/tapi?" + post_data; 

  var options = {       
    'method': 'getInfo',
    'contentType': 'application/json',
    'headers': {          
      "Key": key,
      "Sign":sign

    },
    //'payload': postdata,
  //muteHttpExceptions: true
  }; 


   //Logger.log(url);

  var response = UrlFetchApp.fetch(url, options);
  var json = response.getContentText();
  var data = JSON.parse(json);


     Logger.log(data);



  }

  function getMessageSignature(url, secret, key, nonce) 
    {
     const hash =      Utilities.computeDigest(Utilities.DigestAlgorithm.SHA_256, nonce + secret);
  const hmac_digest = Utilities.computeHmacSignature(Utilities.MacAlgorithm.HMAC_SHA_512, url + hash, Utilities.base64Decode(secret));
 return Utilities.base64Encode(hmac_digest);
}

Если я запускаю приведенный выше код, я получаю эту ошибку:

[19-10-11 21: 01: 53: 220 ИКТ] {успех = 0, код ошибки = post_data_empty, ошибка = пустые данные POST.}

...