Blazor WASM 文件不存在(但可读?)

Blazor WASM File does not exist (but is readable?)

我有一个 Blazor WASM PWA,我想独立使用(如果可能的话)。

目前,我正在尝试操作 wwwroot

下的一个 json 文件

Location of Json File

现在,虽然我可以通过 HttpClient.GetFromJsonAsync 读取其内容,但所有其他访问该文件的尝试都失败了。

我尝试过的:

我知道在 WebAssembly 中,文件 cached/loaded 进入浏览器,所以我明白为什么我应该无法找到路径为“/datasource-json/Ingredient.json 的文件”,但为什么“GetFromJsonAsync”与该路径一起工作?

我是否遗漏了一些重要的东西,我该如何解决这个问题? 对于这个特定的项目,如果可能的话,我不想使用另一个 Api-Project + Entity Framework。

Wasm 完全在浏览器上运行,因此您几乎没有文件系统。如果你有的话,那将是客户端机器,但这将是一个重大的安全漏洞。

为什么从 http 获取文件有效是因为服务器提供对 Web 根目录中所有文件的 GET 访问。

为什么 POST 不起作用是因为发布内容需要服务器端点侦听 URL 上的数据并且可以理解您发送的格式。因此,您需要某种控制器,它有一个特定的 URL 与文件 URL

不同