不支持WebClient

互联网

试图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由框架提供为服务;因此,您可以将其注入到组件或常规类中。在服务器端Blazor中,缺少此提供,因此您应该自己创建和配置HttpClient。您也可以使用IHttpClientFactory提供HttpClient,这是更好的选择。

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

希望这可以帮助...

好消息:

转向mono.wasm绑定应启用对WebSockets,HttpClient的支持,而无需在我们这边添加代码,等等。

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

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章