我正在尝试使用 Ajax 在区 block 链上创建钱包,但出现“跨源请求被阻止”错误。我的 Ajax 调用是:
$.ajax({
type: 'POST',
url: 'https://blockchain.info/api/v2/create_wallet',
data: "cors=true&email="+email+"&password="+password+"&api_code="+code,
dataType:'json',
crossDomain: true,
beforeSend:function(){
},
success: function (data) {
}
});
当我发布这个时,我收到错误 Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://blockchain.info/api/v2/create_wallet。这可以通过将资源移动到同一域或启用 CORS 来解决。
On Blockchain他们说如果您向请求添加 cors=true 参数,一些 API 调用可用于 CORS header
我已经尝试了所有方法,我尝试将此参数作为 GET 和 POST 参数发送,我尝试过 jsonp。我也尝试过使用 header Access-Control-Allow-Origin *
但似乎没有任何效果。任何人都可以确认他是否设法使用 Ajax 调用创建了区 block 链钱包,或者他们不支持 CORS。任何帮助将不胜感激。
谢谢
哈姆扎
最佳答案
我认为可以肯定地说区 block 链的钱包 API 不支持 CORS。
您上面的 AJAX 调用看起来是正确的,但您遇到了 CORS 阻塞错误。
与他们的一些其他 API 不同,区 block 链钱包 API 文档位于 https://blockchain.info/api/blockchain_wallet_api不要不指定可通过带有 cors=true 查询参数的 CORS 进行调用。
在浏览器中使用 javascript 处理私钥和密码时,存在一些重大的安全隐患。我怀疑这就是他们不允许这样做的原因。
关于javascript - 使用 Ajax 在区 block 链上创建钱包会出现 CORS 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25754700/