我的代码在anWriter应用程序中工作正常,但在Chrome浏览器中不工作!
到达 Account_Fetch 函数中的 * Fetch * 行后冻结!
如果代码 * 工作正常 * 它将显示 *OK * 消息!
文档:
- 端点安全类型 *
- 签名端点安全 *
- 定时安全 *
- 账户信息 *
- 备注 *:该账号用于 * 测试 *,所以我分享了我的 API Key 和 Secret Key!
<html>
<script src="https://cdnjs.cloudflare.com/ajax/libs/crypto-js/4.0.0/crypto-js.js"></script>
<script>
let AccessKey="1q02kgTluaKFYH9vgBAQyIIIN7UmSSCZvI8dELzM4RsNR3WEWJJqb6cIdaPVkYjE";
let SecretKey="IFcsWGidd6WQFZMKlUMd9fzTn0ztBV8esRl1BSz5O9vrKClrlDXorVAxUxJGWkwk";
let ServerTime=0;
let MaxDelay=60000;
Process();
async function Process()
{
await Time_Fetch();
await Account_Fetch(AccessKey,SecretKey,ServerTime,MaxDelay);
alert("OK");
}
async function Time_Fetch()
{
let URL="https://api.binance.com/api/v3/time";
let Request=URL;
let Fetch=await fetch(Request);
let JSON=await Fetch.json();
let Data=await JSON;
ServerTime=parseInt(Data.serverTime);
}
async function Account_Fetch(AccessKey,SecretKey,ServerTime,MaxDelay)
{
let URL="https://api.binance.com/api/v3/account";
let Parameters="timestamp="+ServerTime+"&"+"recvWindow="+MaxDelay;
let Signature=CryptoJS.HmacSHA256(Parameters,SecretKey);
let Request=URL+"?"+Parameters+"&"+"signature="+Signature;
let Fetch=await fetch(Request,{method:"get",headers:{"X-MBX-APIKEY":AccessKey}});
let JSON=await Fetch.json();
let Data=await JSON;
}
</script>
</html>
字符串
3条答案
按热度按时间iklwldmw1#
看看下面的代码-这一个运行到最后。然而,我被告知,“你不能从浏览器发出签名的API请求”
字符串
4dc9hkyq2#
一切看起来都很好,除了在HmacSHA256方法的末尾缺少一个
toString()
。字符串
这个方法返回一个像这样的对象(例如):
型
因此,您需要将其转换为字符串。
eoxn13cs3#
并需要将ServerTime更改为ServerTime.toString():
字符串