Угловой Laravel хранит файл JSPDF в базе данных

#angular #laravel #jspdf

#угловой #ларавель #jspdf

Вопрос:

Я пытаюсь сгенерировать PDF-файл с помощью JSPDF и html2canvas в Angular и отправить его в Laravel для хранения в базе данных

в Angular у меня есть форма, в которой я могу вводить данные пользователя, и в режиме реального времени я использую двустороннюю привязку данных для заполнения pdf данными, которые я ввожу в тот же момент, и после отправки формы я собираю данные с помощью реактивной формы с именем createUserForm, преобразую DIV в PDF и добавляю его с помощью нового FormControl в форму и вызываю службу для отправки данных формы в Laravel API

угловой код

 createUserForm: FormGroup = new FormGroup({  'name': new FormControl(null, [Validators.required, Validators.minLength(3), Validators.maxLength(100)]),  'gender': new FormControl(null, [Validators.required]),  'date_of_birth': new FormControl(null, [Validators.required]),  'identity': new FormControl(null, [Validators.required, Validators.minLength(14), Validators.maxLength(14)]),  'test': new FormControl(null, [Validators.required, Validators.minLength(3), Validators.maxLength(100)]),  'result': new FormControl(null, [Validators.required]),  'register_date': new FormControl(null, [Validators.required]),  'result_date': new FormControl(null, [Validators.required]),  'branch': new FormControl(null, [Validators.required, Validators.minLength(3), Validators.maxLength(100)]),  'reference_range': new FormControl(null, [Validators.required]),  'lab_director': new FormControl(null, [Validators.required, Validators.minLength(3), Validators.maxLength(100)]),  'qr_url': new FormControl(this.qrCode) });  getFormData(formData: any) {  if (formData.valid == true) {  let data = document.getElementById('pdf')!;    html2canvas(data).then(canvas =gt; {    let docWidth = 208;  let docHeight = canvas.height * docWidth / canvas.width;    const contentDataURL = canvas.toDataURL('image/png')  let doc = new jsPDF('p', 'mm', 'a4');  let position = 0;  doc.addImage(contentDataURL, 'PNG', 0, position, docWidth, docHeight)    let blob = doc.output('blob');   formData.addControl('report', new FormControl(blob, Validators.required));  });  } }  

Когда я отправляю форму, Laravel возвращает ошибку «требуется поле отчета» и не видит большой двоичный объект