我使用Amazon S3的loopback-component-storage遇到了障碍 . 作为测试,我试图从我的浏览器应用程序上传一个文件到S3,后者在后端调用我的环回API .
我的datasources.json服务器配置如下:
"s3storage": {
"name": "s3storage",
"connector": "loopback-component-storage",
"provider": "amazon",
"key": “blahblah”,
"keyId": “blahblah”
},
我的API endpoints 是:'/ api / Storage'
我从API获得的错误响应如下:
. error: {name: "MissingRequiredParameter", status: 500, message: "Missing required key 'Bucket' in params",…}
. code: "MissingRequiredParameter"
. message: "Missing required key 'Bucket' in params"
. name: "MissingRequiredParameter"
. stack: "MissingRequiredParameter: Missing required key 'Bucket' in params …”
. status: 500
. time: "2015-03-18T01:54:48.267Z"
如何将{“params”:{“Bucket”:“bucket-name”}}参数传递给我的loopback REST API?
请指教 . 非常感谢!
2 回答
AFAIK铲斗在loopback-component-storage或pkgcloud世界中被称为容器 .
您可以在URL参数中指定容器 . 如果您的目标是
/api/Storage
,那么您将在该路径中使用/api/Storage/container1/upload
指定容器,格式为PATH/:DATASOURCE/:CONTAINER/:ACTION
.在这里查看测试以获取更多示例:https://github.com/strongloop/loopback-component-storage/blob/4e4a8f44be01e4bc1c30019303997e61491141d4/test/upload-download.test.js#L157
游民 . “容器”基本上转换为S3的“桶” . 我试图通过POST传递params对象但是魔鬼在细节中,即上传的HTTP POST路径在路径本身中寻找桶/容器 . / api / Storage / abc / upload意味着'abc'就是桶 .