【发布时间】:2018-09-09 03:48:15
【问题描述】:
我做错了什么?
我正在尝试获取我的帐户信息,但有些地方不正确。
var apiKey = 'myAPIKey';
var secret = 'mySecret';
var queryString = 'timestamp=' + Date.now();
var hash = CryptoJS.HmacSHA256(queryString,secret);
var url = 'https://api.binance.com/api/v3/account?'+ queryString + '&signature=' +hash;
$('.botonOrden').click(function(){
$.ajax({
beforeSend: function(req){
req.setRequestHeader("X-MBX-APIKEY", apiKey);
},
type: 'GET',
url: url
})
.done(function() {
console.log("success");
})
.fail(function() {
console.log("error");
})
.always(function() {
console.log("complete");
});
});
控制台说:
跨域请求被阻止:同源策略不允许读取位于https://api.binance.com/api/v3/account?timestamp=1522383455036&signature=MyHash的远程资源。
(原因:缺少 CORS 标头“Access-Control-Allow-Origin”)。
我想我正在这样做,如文档中所示: https://github.com/binance-exchange/binance-official-api-docs/blob/master/rest-api.md#signed-endpoint-examples-for-post-apiv1order
【问题讨论】:
-
我没有收到 Cross-Origin Request Blocked 错误,我收到 404 错误:codepen.io/spmsupun/pen/mxxRro
-
你需要开一个币安账户,把你的apiKey和Secret放在变量var apiKey中;和 var 秘密;然后它发送一个带有正确 url 的 GET 请求
-
即使它不应该出现 404 错误,它也应该显示无效密钥错误。尝试使用无效密钥,看看你得到了什么
-
你说得对,我的错,实际上我更新了代码让我更好地理解:
-
$('.botonOrden').click(function(){ var invocation = new XMLHttpRequest(); var url = 'api.binance.com/api/v1/time'; callOtherDomain(); function callOtherDomain(){ if( invocation) { invocation.open('GET', url, true); invocation.send(); } } });
标签: javascript jquery api get api-key