NodeJS 如何使用syncfusion文件管理器在angular中访问我的AWS S3 Bucket?

3zwjbxry  于 12个月前  发布在  Node.js
关注(0)|答案(1)|浏览(130)

我试图访问我的s3桶,并显示在我的Angular 使用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`);
});


我有一个JS文件用于将照片上传到AWS S3:

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;


我正在努力从我的html通过我的NodeJS连接到S3桶?

<ejs-filemanager id='default-filemanager' [ajaxSettings]='ajaxSettings'></ejs-filemanager>

xfb7svmp

xfb7svmp1#

根据共享的详细信息,我们了解到您正在使用Amazon S3存储桶实现自己的NodeJS提供程序。但是,我们想通知您,我们已经添加了有关如何创建自己的NodeJS服务提供程序的文档。要了解更多信息,请参阅下面的文档。
https://ej2.syncfusion.com/angular/documentation/file-manager/how-to/custom-file-provider#create-nodejs-project
此外,要了解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
查看共享的详细信息,并让我们知道您是否需要任何进一步的帮助。

相关问题