###前提・実現したいこと
GoogleAppsScriptでZaifの現物取引APIで認証を通そうとしています。
現物取引APIは認証が必要なものです。
APIドキュメントはこちらです。
###発生している問題・エラーメッセージ
署名がうまくいっていないようで、以下のエラーが出ています。
error=signature mismatch
おかしなところがあればご指摘いただけると助かります。
よろしくお願いします。
###該当のソースコード
zaif.gs
1function getZaifInfo() { 2 var key = ZF_KEY; 3 var secret = ZF_SECRET; 4 var endpoint = 'https://api.zaif.jp/tapi?' 5 var date = new Date(); 6 var nonce =Math.floor((date.getTime()/1000)).toString(); 7 var method='get_info'; 8 var currency_pairs='xem_jpy'; 9 10 //パラメーター作成 11 var encoded_params = 'nonce=' + nonce +'?method=' + method 12 13 //HMAC-SHA512で署名 14 var signature = Utilities.computeHmacSignature(Utilities.MacAlgorithm.HMAC_SHA_512, encoded_params, secret,Utilities.Charset.UTF_8); 15 var signed = //バイト配列で暗号を返すので16進数化 16 17 var headers ={ 18 'key':key, 19 'sign':signed, 20 'Content-Type':'application/x-www-form-urlencoded' 21 } 22 var options ={ 23 'method':'POST', 24 'headers':headers 25 } 26 27 var url = endpoint + encoded_params; 28 var response = UrlFetchApp.fetch(url, options); 29}
###試したこと
署名の文字コードの指定有無:結果変わらず
###補足情報(言語/FW/ツール等のバージョンなど)
参考にした情報
https://developers.google.com/apps-script/reference/utilities/
https://qiita.com/bitrinjani/items/fff7e2bf6a2b8be6eac0
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。