#blazor #asp.net-core-webapi #blazor-webassembly
Вопрос:
У меня есть проект Blazor Webassembly PWA под названием «QrReader.Клиент» и проект под названием «QrReader.Сервер», который был сгенерирован после установки флажка «ASP.NET Ядро размещено». В моем «QrReader.Проект «Клиент» я использовал библиотеку js для чтения QR-кодов, которая отлично работает. Теперь я хочу реализовать решение, которое создает и записывает текстовый файл на мой FTP-сервер после успешного сканирования. У меня уже есть метод «UploadToFtp()» для этого, который отлично работает, но я впервые работаю с API.
Итак, где должен находиться мой метод «UploadToFtp()» и как я могу вызвать этот метод после успешного сканирования Qr с помощью javascript или razor? Я не чувствую, что этот метод принадлежит контроллеру API…
Комментарии:
1. Если вы хотите вызвать
UploadToFtp()
клиента,вы можете поместить его в свой api. Или вы также можете создать новый проект и вложитьUploadToFtp()
в него средства.
Ответ №1:
… решение, которое создает и записывает текстовый файл на мой FTP-сервер после успешного сканирования.
Зачем вам использовать FTP? Это старый протокол, который не поддерживается в приложении браузера.
Результат сканирования может быть отправлен в ваш API (QrReader.Сервер) в виде текста или в виде DTO.
Если вам нужен стартер, посмотрите, как fetchData.razor использует GetAsJsonAsync для получения своих прогнозов. Вам понадобится PostAsJsonAsync, чтобы пойти в другом направлении.
Когда вам действительно понадобится FTP, вы можете загрузить его со своего сервера с помощью FtpWebRequest.