c# - Blazor 中的网络凭据
问题描述
在 WASM Blazor 应用程序中,我通过在顶部执行此操作来注入 Http 客户端:
@inject HttpClient Http
现在我希望能够像在常规 .NET 中一样设置用户名和密码,你可以这样做:
handler.Credentials = new NetworkCredential(userName, password);
但是,我找不到Http
可以设置凭据的任何属性,我该如何设置?
解决方案
目前尚不清楚您做了什么,因为您几乎没有提供代码来证明您的问题。但是,很清楚你在努力什么。
为了在 Blazor WebAssembly 应用程序中对用户进行身份验证和授权,您可以使用 Jwt 身份验证或 OpenID 连接,将用户的凭据传递到 Web Api 端点以验证用户,创建 Jwt 令牌,并将其传递回您的前端可以将 Jwt Token 存储在本地存储中,并在用户登录、访问各种资源等时取回。
另请注意,HttpClient 并不是真正的 HttpClient。它基于 JavaScript Fetch Api,缺少 WebSockets 等功能。
我已经在本节中发布了有关如何使用 Jwt 身份验证和 OpenID 连接的答案。您必须搜索那些处理 Jwt 身份验证的答案,因为那是很久以前的事了,我不记得它们的位置。但是,这里是添加 OpenID Connect to IdentityServer4和Accessing token from Blazor的链接
希望这可以帮助...
推荐阅读
- python - 如何生成均匀分布在矩形上的二维点?
- javascript - 使用 Tailwind CSS 使用绝对位置将图像放置在另一个图像上方
- wordpress - Nginx try_files index.php 无法处理
- python - lazy 和 uselist 在 flask-sqlalchemy 中做了什么?
- mongodb - 数据模型中的嵌入和引用 - mongodb
- java - java.lang.ClassCastException:org.hibernate.mapping.SingleTableSubclass 不能转换为 org.hibernate.mapping.RootClass
- python - 替换预期的至少 2 个参数得到 1 个错误
- r - R中的循环:使用索引括号子集
- python-3.x - 将列表绘制为颜色条以有效地可视化异常值
- python - 具有多个条件的 SQLAlchemy CheckConstraint 引发警告