我正在使用minio客户端访问S3。我正在使用的S3存储有两个端点-一个(例如EP1)可从专用网络访问,另一个(例如EP2)可从互联网访问。由于无法访问EP2,我的应用程序创建了一个预签名URL,用于使用EP1下载S3对象。该URL由不在此专用网络上的另一个应用程序使用,因此只能访问EP2。该URL被网络外部的应用程序使用时(显然)不起作用,因为该URL中包含EP1。
我已经浏览了minio文档,但是没有找到任何可以帮助我指定备用端点的东西。
所以我的问题是-
答案 0 :(得分:0)
您可以使用minio-js
进行管理
以下是您可以使用的示例
var Minio = require('minio')
var s3Client = new Minio.Client({
endPoint: "EP2",
port: 9000,
useSSL: false,
accessKey: "minio",
secretKey: "minio123",
region: "us-east-1"
})
var presignedUrl = s3Client.presignedPutObject('my-bucketname', 'my-objectname', 1000, function(e, presignedUrl) {
if (e) return console.log(e)
console.log(presignedUrl)
})
这根本不会与服务器联系。这里唯一的事情是您需要知道存储桶所属的区域。如果您没有在迷你图中设置任何location
,则可以默认使用us-east-1
。