<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[wangxin5576的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/wangxin5576</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; wangxin5576]]></copyright><item><title><![CDATA[NET6完整项目实战系列第6篇：用户登录番外篇--app.UseAuthentication()和app.UseAuthorization()的使用（下）]]></title><link>https://blog.youkuaiyun.com/wangxin5576/article/details/130746981</link><guid>https://blog.youkuaiyun.com/wangxin5576/article/details/130746981</guid><author>wangxin5576</author><pubDate>Thu, 18 May 2023 14:56:33 +0800</pubDate><description><![CDATA[注意：和 WEBAPI 不同，RazorPages 的角色授权只能是整个页面（这里是UserIndexModel），不可以具体到页面中的某个方法，虽然前面实现了认证，能读取声明中的信息，但以admin的身份登录后是可以访问 UserIndex 页面的，反之亦然，要实现admin账号。2. 显示了 Forbidden.cshtml 页面的值，这是我们在 Program.cs 的 AddCookie( ) 方法中设置的；//无权限访问时跳转到的页面，Pages目录下要有Forbidden.cshtml页面。]]></description><category></category></item><item><title><![CDATA[NET6完整项目实战系列第5篇：用户登录番外篇--app.UseAuthentication()和app.UseAuthorization()的使用（中）]]></title><link>https://blog.youkuaiyun.com/wangxin5576/article/details/130746932</link><guid>https://blog.youkuaiyun.com/wangxin5576/article/details/130746932</guid><author>wangxin5576</author><pubDate>Thu, 18 May 2023 14:46:38 +0800</pubDate><description><![CDATA[1.因为 Login.cshtml 页面是  POST 提交，所以 Login.cshtml.cs 中对应的处理方法是  OnPost( ) ， 这是 net6 的规则。然后对 Login.cshtml 和 Login.cshtml.cs 文件中做少少改动，增加账号密码的非空校验，最后将登录信息写入cookie中，重新编译后运行，打开浏览器的开发人员工具查看，没有cookie消息（这里的Cookie不是login.cshtml.cs中设置的，new Claim("UserName", "张先生"),]]></description><category></category></item><item><title><![CDATA[NET6完整项目实战系列第4篇：用户登录番外篇--app.UseAuthentication()和app.UseAuthorization()的使用（上）]]></title><link>https://blog.youkuaiyun.com/wangxin5576/article/details/130746899</link><guid>https://blog.youkuaiyun.com/wangxin5576/article/details/130746899</guid><author>wangxin5576</author><pubDate>Thu, 18 May 2023 14:46:30 +0800</pubDate><description><![CDATA[a class="nav-link text-dark" asp-area="" asp-page="/Login">登录</a>另外，在webapi出现之后，出现在各种项目中，特别是一些移动端的项目，这时候认证会混合有cookie和JWT等多种方式，在net6中，微软已经集成。的认证信息需要编码写入请求头之后再发送请求，不像浏览器，发送请求时会自动带上cookie信息，不需要编码。出现了JWT这样的认证方式，原理大同小异，相同的是， 认证信息都是保存在请求头中传递的，不同是JWT中。]]></description><category></category></item><item><title><![CDATA[NET6完整项目实战系列第3篇：Program.cs 文件解析]]></title><link>https://blog.youkuaiyun.com/wangxin5576/article/details/130746797</link><guid>https://blog.youkuaiyun.com/wangxin5576/article/details/130746797</guid><author>wangxin5576</author><pubDate>Thu, 18 May 2023 14:44:14 +0800</pubDate><description><![CDATA[启用静态文件中间件，加上这行代码后， 我们在浏览器中才能访问 wwwroot 目录下的文件，否则会报错。Program.cs 是整个Web应用程序的入口文件，.NET6 之前有一个入口函数 Main() ， NET6中去掉了 ，其中的代码没有任何函数定义，第12～15行，添加一个异常处理中间件，此中间件发生作用的条件是：当前运行环境必须是开发环境 ，如果 Web 应用程序出现异常，同样的道理，如果我们在项目中需要把某些文件放在新的目录中，需要在 Program.cs 中启用相应的中间件才行，]]></description><category></category></item><item><title><![CDATA[NET6完整项目实战系列第2篇：网站项目目录解析]]></title><link>https://blog.youkuaiyun.com/wangxin5576/article/details/130744055</link><guid>https://blog.youkuaiyun.com/wangxin5576/article/details/130744055</guid><author>wangxin5576</author><pubDate>Thu, 18 May 2023 11:53:37 +0800</pubDate><description><![CDATA[</script> } 换成 <script type="text/javascript" src="~/js/index.js">]]></description><category></category></item><item><title><![CDATA[NET6完整项目实战系列第1篇：Web项目简介]]></title><link>https://blog.youkuaiyun.com/wangxin5576/article/details/130738969</link><guid>https://blog.youkuaiyun.com/wangxin5576/article/details/130738969</guid><author>wangxin5576</author><pubDate>Thu, 18 May 2023 11:44:12 +0800</pubDate><description><![CDATA[添加链接描述**微软的NET6 / VS2022发布有几个月了，相比旧版本，最直观的变化是NET6引入了顶级语句（Top-Level Programs），这让Program.cs文件中的代码有些不一样，其他的变化不大，可能更多的还是底层类库的性能和规范性方面的优化， 如果以前写过.netcore，上手并不难。尤其值得一提的是VS2022的智能感知功能，让人惊叹，]]></description><category></category></item></channel></rss>