萌新求助, ASP .NET Core 框架是一个完整的 Web 框架吗,是不是内置的功能很少?连 BasicAuth 都需要自己实现。

2022-03-03 17:11:26 +08:00
 rv54ntjwfm3ug8
今天刚开始学基于 .NET Core 的 Web 开发,之前接触的 Go/Rust 配置固定密码的 BasicAuth 鉴权都只要添加一个现成的中间件就行了,ASP .NET Core 还要手动读请求头判断。
另外大部分 ASP .NET Core 开发的项目数据库大部分都用 MSSQL 吗,用 PostgreSQL 的多吗?
3955 次点击
所在节点    程序员
31 条回复
thinkershare
2022-03-03 19:09:33 +08:00
请你先给出完整 Web 框架的定义?
你这里每一个问题都是槽点, BasicAuth 被淘汰了, ASP.NET Core 是一个基于中间件架构的 Web 框架, 它非常基础, 几乎不提供非通用的东西.
你的另外一个问题没有人能够回答你, 因为没有详细的统计数据支持, 不过我可以告诉你我呆过的公司从 SQL Server, Oracle, MySQL, PostgreSQL, MongoDB 都有, 用 MySQL 是最多的
mineralsalt
2022-03-03 19:10:56 +08:00
别学这个了, 浪费时间, 还是学一些主流的比较好
INCerry
2022-03-03 19:12:23 +08:00
你也可以安装现成的 NuGet 包来实现需求,微软官方文档
https://docs.microsoft.com/zh-cn/aspnet/core/security/authorization/introduction?view=aspnetcore-6.0
数据库无所谓,你想用啥用啥,我们公司的情况就是,大数据连有使用 TIDB ,小数据量用 MYSQL ,也有一些 MSSQL 的应用,PostgreSQL 也在项目中有使用
ragnaroks
2022-03-03 19:13:13 +08:00
"aspnet core" 是 dotnet 的 Web 框架,自身包含绝大多数实现,比如 JWT/CORS/WS 等等,身份验证之类也是以中间件形式提供的

你的问题在于没有看文档
https://docs.microsoft.com/zh-cn/aspnet/core/
https://docs.microsoft.com/zh-cn/aspnet/core/security/authentication/?view=aspnetcore-3.1

另外最好使用 VS 来进行开发,这样你有什么想法的时候可以输入你的想法并按下 CTRL+dot(.) 试试
lybcyd
2022-03-03 19:15:28 +08:00
每个框架都有自己的功能取舍,没有完全覆盖其他框架的功能挺正常的。没有的功能要么找一下第三方包,要么自己写。
如果想要功能全的,就我接触过的框架而言,自带功能最全的是 Java 的 spring 和 php 的 laravel ,你能想到的 web 功能基本都自带解决方案。
BrettD
2022-03-03 19:15:50 +08:00
ASP .NET Core 居然不是主流?
INCerry
2022-03-03 19:16:05 +08:00
thinkershare
2022-03-03 20:22:40 +08:00
不是提供的功能太少, 而是旧版功能太多了. 所以微软才将 其实干掉了, 然后在 Core 中不断做细粒度的解耦, 因为并不是你需要的功能其它人都需要.
另外使用 Google 搜索引擎搜索一下, Stack Overflow 上关于这个问题的已经有了明确而完整的答案!
userforg2021
2022-03-03 21:25:59 +08:00
@BrettD 为什么不是主流呢?因为 xx 是原罪
forgottencoast
2022-03-03 22:43:40 +08:00
@mineralsalt OP 刚接了一个 ASP.NET Core 的工作,月薪 10W 人民币,香的很。
mineralsalt
2022-03-03 23:07:13 +08:00
@forgottencoast 这么多么, 月薪 10W 的人还要写代码啊
GiantHard
2022-03-04 00:34:49 +08:00
楼主掌握了在互联网正确提问的姿势
ASP.NET Core 中怎么实现 Basic Auth ?
✔️ASP .NET Core 框架是一个完整的 Web 框架吗,是不是内置的功能很少?连 BasicAuth 都需要自己实现?
jbgz
2022-03-04 09:11:36 +08:00
ASP .NET Core 居然不是主流?
encro
2022-03-04 09:16:42 +08:00
Postgresql 选择没错的,Mysql 只能做 OLTP ,PG 可以 OLTP+OLAP ,我最近就在为 MySQL 转 OLAP 头痛。
skinny
2022-03-04 09:17:45 +08:00
槽点难道不是微软为了 Razor ,搞得在使用一些组件(比如 Cookies 认证)开发 Web API 时会出现反直觉的问题嘛(比如一个普通 API 接口哪需要跳转登录页)……

还有我个人觉得 Identity 是真的难用不好用
sjzjams
2022-03-04 09:21:04 +08:00
你说的那些框架是开发者们又给你封装了一层的,也是需要有人做这件事儿的,难以想象现在.net 都被误会成这样了哈哈哈哈
afirefish
2022-03-04 09:28:38 +08:00
看来.net 凉了啊,ASP.NET Core 居然都不是主流了
ClorisYe
2022-03-04 09:38:12 +08:00
@skinny 我也觉得 identity 是很难用,你有没有好一点的现成库推荐?另外,微软文档说,保护 api 项目推荐使用 identity server
skinny
2022-03-04 09:57:53 +08:00
@ClorisYe 我没有找到靠谱好用的第三方库。我现在改成按需求自己写……因为这比改造自定义 Identity 费的脑细胞少,也没那么复杂那么绕。我不想用 IdentityServer4……
skinny
2022-03-04 10:02:17 +08:00
@ClorisYe API 访问认证现在也换成 Token 了,就一个单纯密码学安全随机的足够长的字符串,写一个 AuthenticationHandler 就好了,就算不用 asp.net core 换其它也简单容易,还有状态,随时可撤销。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/837753

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX