我试图从Google中运行一个函数,从Bybit Exchange获得关闭的PNL订单列表。
我一直有个签名错误。不知道怎么解决这个问题。
function bybitpnl()
{
var timeStamp = ''+ new Date().getTime();
var host = 'https://api.bybit.com';
var endpoint ='/contract/v3/private/position/closed-pnl?symbol=ETHUSDT';
var key = 'xxxxxxxxxxx';
var secret = 'xxxxxxxxxxxx';
var recv_widow = '5000';
var url= host + endpoint;
var strForSign = timeStamp.toString()+key+recv_widow.toString()+url.toString();
Logger.log(strForSign);
var signature = Utilities.computeHmacSha256Signature(strForSign,secret);
var options = {
"method":"GET",
'headers' : {
'X-BAPI-SIGN-TYPE': '2',
'X-BAPI-API-KEY': key,
'X-BAPI-TIMESTAMP': timeStamp,
//'X-BAPI-SIGN': Utilities.base64Encode(signature),
'X-BAPI-SIGN': signature,
'X-BAPI-RECV-WINDOW': recv_widow
},
"contentType":"application/json",
};
var result = UrlFetchApp.getRequest(url, options);
Logger.log(result)
var result = UrlFetchApp.fetch(url, options);
Logger.log(result)
};
发布于 2022-08-09 19:15:12
我必须将签名转换为十六进制,所以我通过以下函数运行它:
function DecToHex(value) {
var result = "";
while( value != 0 ) {
var temp = value % 16;
Logger.log(temp);
var hex = temp < 10 ? String.fromCharCode(temp+48) : String.fromCharCode(temp+55);
result = hex.concat(result);
value = Math.floor(value/16);
}
result = result;
return result;
}
https://stackoverflow.com/questions/73296218
复制相似问题