代码之家  ›  专栏  ›  技术社区  ›  Muhammad Aadil Banaras

从angular 7应用程序向节点API发送大型图像

  •  0
  • Muhammad Aadil Banaras  · 技术社区  · 5 年前

    ngx图像裁剪器 它获取图像,转换成base64,然后上传到nodejs api, 问题是超过2MB的图像它不工作,我需要允许更大的图像以及它。

    app.use(bodyParser.json({limit: '40mb', extended: true}))
    app.use(bodyParser.urlencoded({limit: '40mb', extended: true}))
    

    <image-cropper
                [ngClass]="croppedImage == '' ? 'hide' : 'show'"
                [imageChangedEvent]="imageChangedEvent"
                [maintainAspectRatio]="true"
                [aspectRatio]="12 / 4"
                format="png"
                (imageCropped)="imageCropped($event)"
                (imageLoaded)="imageLoaded()"
                (cropperReady)="cropperReady()"
                (loadImageFailed)="loadImageFailed()"
            ></image-cropper>
    
    
    
    ageCropped(event: ImageCroppedEvent) {
          this.croppedImage = event.base64;
          // console.log('image cropped')
      }
    uploadImage(){
        this.loading = true;
        let b64 = this.croppedImage;
        this.imageService.uploadImageB64(b64)
    });
    

    我已经给出了40mb的大小限制,

    1. 此模块不允许使用大图像
    2. 当转换为base64时,图像大小会变大,因为我上载大图像时,我需要一个压缩图像的过程,比如如果上载的3mb图像应该小于1MB,而不会对质量造成太大影响。
    0 回复  |  直到 5 年前