如何从 Blazor Webassembly 中的服务器项目调用方法?

How can i call a Method from the Server project in Blazor Webassembly?

我有一个名为“QrReader.Client”的 Blazor Webassembly PWA 项目和一个名为“QrReader.Server”的项目,它是在选中复选框“ASP.NET Core hosted”后生成的。 在我的“QrReader.Client”项目中,我使用了一个 js 库来读取 QR 码,效果很好。现在我想实现一个解决方案,在成功扫描后创建一个文本文件并将其写入我的 FTP 服务器。我已经有一个“UploadToFtp()”方法可以正常工作,但这是我第一次使用 API.

那么我的“UploadToFtp()”方法应该放在哪里,在 javascript 或剃须刀成功扫描 Qr 后如何调用此方法?我觉得这个方法不属于 API 控制器...

... a solution which creates and writes a textfile to my FTP Server after a succesfull scan.

为什么要使用 FTP?这是一个旧协议,在浏览器应用程序中不受支持。

扫描结果可以作为文本或 DTO 发布到您的 API (QrReader.Server)。

如果您需要入门,请查看 FetchData.razor 如何使用 GetAsJsonAsync 来获取预测。您将需要 PostAsJsonAsync 朝另一个方向前进。

当您确实需要 FTP 时,您可以使用 FtpWebRequest 从您的服务器上传它。