我正在尝试访问 Ankr API 地址,如下所示:
https://apis.ankr.com/XXXX/YYYY/full/main https://apis.ankr.com/XXXX/YYYY/full/main
当通过浏览器访问此链接时,我可以引入我在 Ankr 面板控件上创建的凭据,并且可以成功通过。但是现在我尝试在 Node 上使用 Web3.js 来做到这一点:
var options = {
headers: [
{
name: 'Authorization',
value: 'Basic myUsername:myPassword',
},],};
const web3 = new Web3(new Web3.providers.HttpProvider('https://apis.ankr.com/XXXX/YYYY/full/main', options))
我收到 401 未经授权的错误响应。我认为我的凭据是正确的,因为我可以通过浏览器上的链接访问它们,但在传递标头时它们似乎不起作用。代码有什么问题或者缺少什么?
您需要传递的base64myUsername:myPassword
,而不是实际的明文。
// base64 encoded
value: 'Basic ' + Buffer.from('myUsername:myPassword').toString('base64'),
See the MDN docs https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Authorization了解更多信息。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)