Я следую учебному пособию по Ionic / Capacitor с Angular, и эта часть здесь вызывает у меня некоторые проблемы:
Plugins.Camera.getPhoto({
quality: 50,
source: CameraSource.Prompt,
correctOrientation: true,
width: 200,
resultType: CameraResultType.Base64
})
.then(image => {
this.selectedImage = image.base64String;
С прямым доступом к шаблону selectedImage, например:
<ion-img
role="button"
class="image"
(click)="onImagePicked()"
[src]="selectedImage"
*ngIf="selectedImage"
></ion-img>
В частности, я получаю эту ошибку времени выполнения / браузера при съемке изображения: net::ERR_CONNECTION_RESET 431 (Request Header Fields Too Large)
с URL, называемым ionic, являющимся http://localhost:4200/HUGE_BASE64_STRING
Теперь я подумал, что проблема может заключаться в сохранении изображения как base64 вместокапля в памяти. Но потом я наткнулся на этот вопрос:
Конвертировать BLOB-объект в base64
Так что, если бы я сделал
var reader = new FileReader();
reader.readAsDataURL(blob);
reader.onloadend = function() {
var base64data = reader.result;
}
, я бы все равно преобразовал изображение втаким образом, огромный URL, нет? Итак, как правильно хранить большое изображение локально?
Я предполагаю, что это общий вопрос JS, а не специфический для ионной связи, поэтому тег JS