我正在尝试访问我的 s3 存储桶并使用syncfusion 文件管理器在我的角度中显示照片。
在我的 TypeScript 文件中:
ajaxSettings:any;
public hostUrl: string = 'http://localhost:3000/';
constructor() { }
ngOnInit() {
this.ajaxSettings = {
url: this.hostUrl + 'api/v1/upload/'
在我的html中:
<ejs-filemanager id='default-filemanager' [ajaxSettings]='ajaxSettings'></ejs-filemanager>
这是我的 NodeJS API 中的 server.js:
app.use(bodyParser.json());
app.use(cors());
app.post('/api/v1/upload/', upload.array('image', 1), (req, res) => {
res.send({ image: req.file });
});
const PORT = process.env.PORT || 3000;
app.listen(3000, () => {
console.log(`server started on port 3000`);
});
我有一个用于将照片上传到AWS S3的JS文件:
aws.config.update({
secretAccessKey: process.env.ACCESS_KEY_ID,
accessKeyId: process.env.SECRET_ACCESS_KEY,
region: 'ap-south-1'
});
const s3 = new aws.S3();
const upload = multer({
storage: multerS3({
acl: 'public-read',
s3,
bucket: 'angular-upload-files-2023-2024',
key: function(req, file, cb) {
req.file = file.originalname;
//include the folder created before uploading files...
cb(null, "properties2023/" + file.originalname);
}
})
});
module.exports = upload;
我正在努力如何通过 NodeJS 从我的 html 连接到 S3 存储桶?
<ejs-filemanager id='default-filemanager' [ajaxSettings]='ajaxSettings'></ejs-filemanager>
根据共享的详细信息,我们了解到您正在使用 Amazon S3 存储桶来实现您自己的 NodeJS 提供程序。但是,我们想通知您,我们已经添加了有关如何创建自己的 NodeJS 服务提供程序的文档。要了解更多信息,请参阅下面的文档。
此外,要了解 FileManager 组件的可用服务提供程序,请参阅以下文档。
https://ej2.syncfusion.com/angular/documentation/file-manager/file-system-provider
此外,我们还附上了 Angular FileManager 组件的演示和文档。
演示:https://ej2.syncfusion.com/angular/demos/#/material3/file-manager/overview
文档:https://ej2.syncfusion.com/angular/documentation/file-manager/getting-started
查看共享的详细信息,如果您需要任何进一步的帮助,请告诉我们。