Node.js 获取其url包含嵌入凭据的子资源请求的url

Node.js 获取其url包含嵌入凭据的子资源请求的url,node.js,html,http,cloudant,Node.js,Html,Http,Cloudant,我正在使用Cloudant上传和恢复图像。Cloudant使用基本身份验证来验证用户是否可以读取图像。现在,我想通过取回存储在cloudant中的所有图像来创建一个图片库,我计划使用标签和存储在cloudant中的图像的url。如果我使用img src=”https://username:password@myapp-bluemix.cloudant.com/db/docName/attachment\u name我收到以下错误 是否有一种方法可以在S3中获取此文件的签名url,以便我可以在i

我正在使用Cloudant上传和恢复图像。Cloudant使用基本身份验证来验证用户是否可以读取图像。现在,我想通过取回存储在cloudant中的所有图像来创建一个图片库,我计划使用标签和存储在cloudant中的图像的url。如果我使用img src=”https://username:password@myapp-bluemix.cloudant.com/db/docName/attachment\u name我收到以下错误

是否有一种方法可以在S3中获取此文件的签名url,以便我可以在img标记中使用它作为src?

它似乎阻止从网页中获取包含嵌入式凭据的url

没有办法像S3那样创建预签名URL

这给您留下了几个选择:

  • 使数据库“世界可读”,尽管这可能不是您的选项
  • 通过代理交付您的图像-可以编写一个“无服务器”云函数,该函数具有对Cloudant数据库的读取权限,并响应web请求流式传输选定的附件
  • 采用混合方法,将图像元数据存储在Cloudant中,但将二进制blob存储在对象存储中,这更适合存储数据

非常感谢,这真的很有帮助。但我有一个问题,S3 api是开源的吗?我可以正式使用它为IBM开发项目吗?因为IBM在使用第三方api时有严格的政策。IBM的Cloudant对象存储有部分S3兼容api。请参阅