Проблема С Извлечением API Binance В Chrome

#javascript #api #google-chrome #fetch #binance

Вопрос:

Мой Код Отлично Работает В Приложении anWriter, Но Не Работает В Браузере Chrome !

Он Зависает После Достижения Строки Выборки В Функции Account_Fetch !

Если Код Работает Нормально Он Покажет Сообщение «ОК«!

Документация :

Тип безопасности конечной точки

Безопасность подписанной конечной точки

Безопасность Синхронизации

Информация об учетной записи

Примечание : Эта Учетная Запись Предназначена Для Тестирования, И Именно Поэтому Я Делюсь Своим Ключом API И Секретным Ключом !

 <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 "amp;" "recvWindow=" MaxDelay;
let Signature=CryptoJS.HmacSHA256(Parameters,SecretKey);
let Request=URL "?" Parameters "amp;" "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>
 

Комментарии:

1. Я не уверен, какого ответа вы ожидаете. Попробуйте добавить режим:»no-cors» в команду fetch.

Ответ №1:

Взгляните на следующий код — он выполняется до конца. Однако мне сказали, что «вы не можете отправлять подписанные запросы API из браузера».

 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 response=await fetch(Request)
.then(blob => blob.json)

ServerTime=parseInt(Blob.serverTime);
}

async function Account_Fetch(AccessKey,SecretKey,ServerTime,MaxDelay)
{
let URL="https://api.binance.com/api/v3/account";
let Parameters="timestamp=" ServerTime "amp;" "recvWindow=" MaxDelay;
let Signature=CryptoJS.HmacSHA256(Parameters,SecretKey);
let Request=URL "?" Parameters "amp;" "signature=" Signature;

let Fetch=await fetch(Request,{method:"get",headers:{"X-MBX-APIKEY":AccessKey}, mode: 'no-cors'})
.then(blob => blob.json)
}
</script>
</html>