gpt4 book ai didi

blazor - 不支持 WebClient

转载 作者:行者123 更新时间:2023-12-04 16:42:37 27 4
gpt4 key购买 nike

正在尝试使用 WebClient在 Blazor 项目中。

得到以下错误:

blazor.webassembly.js:1

WASM: System.Net.WebException: An exception occurred during a WebClient request.
System.PlatformNotSupportedException: Operation is not supported on this platform.

如何在 Blazor 中进行 API/网络调用?

最佳答案

Blazor 不支持 WebClient。您应该改用 HttpClient。在 Blazor 客户端 HttpClient 由框架作为服务提供;因此,您可以将其注入(inject)到您的组件或普通类中。在服务器端 Blazor 中缺少此优惠,您应该自己创建和配置 HttpClient。您也可以使用 IHttpClientFactory 来提供 HttpClient,这是更可取的。

注意:WebClient 不能在浏览器(客户端 Blazor)上使用,因为它是相对较旧的技术,没有理由将其适配到浏览器上使用。您可能认为这是可能的,因为 HttpClient 可以在浏览器上运行,但在这里澄清一下,当您在浏览器上使用 HttpClient 时,实际上并没有使用实际的 HttpClient,它可能会使用 websockets 等,这可能是一个好主意,而是 HttpClient 的一种适配形式,它在后台使用了 JavaScript Fetch API。

希望这可以帮助...

好消息:

Moving to the mono.wasm bindings should enable support for WebSockets, HttpClient without addition code on our side, etc.



来源: https://github.com/aspnet/AspNetCore/issues/10489

关于blazor - 不支持 WebClient,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56284192/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com