第四章 .net core做一个简单的登录
项目目标部署环境:CentOS 7+
项目技术点:.netcore2.0 + Autofac +webAPI + NHibernate5.1 + mysql5.6 + nginx
开源地址:https://github.com/wmowm/nh.core
上篇我们已经讲了权限管理的实现,传送门:
第三章 搭建一个通用的权限管理系统
这次我换一种讲解,项目与博客,两者同时进行,gogogo
第一步,找个酷炫的登录页面
自己写页面是不可能的,这辈子都不可能的,设计又不会,css又不精通,只有在jq22上面偷页面才能维持的了生活的样子
最近的那个猫头鹰捂眼睛挺火啊,就是它了,先偷回来,再自己改造
先在mvc项目里创建一个登录
话说.net core添加视图是真心慢啊,要等半天,趁这时间吐槽一下
页面也非常简单,抄袭过来是这个样子,我们对它改造一下
改造效果如下
坑1字体图标问题
我也不知道它这个字体图标怎么选,先F12看看它是什么玩意
原来是这个,百度一下,现在最新的都是4.7了,我以前用的是4.4,干脆直接把以前的拿来用了
现在继续去实现验证码功能,还是用我们比较熟悉的GDI+绘制图片
在.net core里需要引入ZKWeb.System.Drawing包,听说部署到linux上,会有毛病,这个我们后面部署的时候再说
每次点击验证码,都会获取新的图片,然后把这个验证码md5加密保存到session里面
HttpContext.Session.SetString("pic_code", pic_code);//存入session
会直接报错
Session 还没有在这个应用程序或请求中配置好。
直接百度就好,园子里大神真是多,我是参考这篇文章实现的
ASP.NET Core 中文文档 第三章 原理(13)管理应用程序状态
现在做一个简单的提交,以前我们都是习惯这样ajax提交表单,.net core里已经没有了这种方式,那没办法,我们只有换一种形式了
听说jquery-ajax-unobtrusive.js这个插件不错,用的玩玩,效果还不错
<form asp-controller="Home" asp-action="Login" data-ajax="true" data-ajax-mode="replace" data-ajax-loading="ValidateLog" data-ajax-success="tips(data)" data-ajax-method="post" class="container offset1 loginform">
验证码成功,就跳转到home/index页面,失败就刷新验证码,并给出提示
//登录回调函数 function tips(data) {if (data.status == "0") {window.location.href = data.returnUrl;} else{$("#imgcode").attr("src", "/Home/GetAuthCode?time=" + Math.random());alert(data.msg);}}
我们继续优化它,还需要一个好看的loading,直接去jq22上面找,然后整合到外面项目中来
放在这里,效果还是挺不错的,然后完美继续优化弹出的提示框
做到这里基本上实现了整个功能,先将它发布到Linux上,看看效果
苦逼了,nginx这块还没有弄好,现在是一次只能代理一个端口,晚上继续研究
2018-4-25 8:21
关于nginx,网上资料很多,是自己弄复杂了,现在简单说下
最后一段,引入服务器的配置信息,它会读取/conf.d/目录下所有包含conf后缀的配置文件
default.conf 内容如下:
这里代理转发了两个站点,映射端口分别为8081与80,现在还没有做静态资源转发
说说昨天遇到最大的深坑IIS Express崩溃,一个晚上都在弄,太可怕了
说说IIS Express崩溃的一些怪象
怪象1.无法正常的生成解决方案,会报错程序被占用,我必须手动关掉IIS Express进程
怪象2.mvc路由絮乱
我们直接说怪象2,怎么一个絮乱呢,举个栗子,mvc路由设置/home/index 为初始页面,此时我输入/home/login显示的内容还是index的内容,而且调试不会命中断点
除了启动的时候,会命中/home/index的控制器断点,后续所有刷新都不会命中断点,尝试用不同浏览器排除了缓存,加上GUID,发现每次GUID的值都会变化,前端抓包,排除301转发
重启电脑,也无法解决
没办法了,我只能让群友那边跑我的代码,有两位群友跑过,显示正常,我意识到可能是我的iis容器出现了问题,我尝试直接使用控制台作为容器,一切正常
做完这个,发现一个因细节疏忽,导致js出错,这个错误又调试了好久
模板页的引用,母版页引用会导致js冲突,项目中可能同时存在两个相同的jq引用,导致部分方法失效,所以一定要检查是否使用母版页
如不使用母版页,页面加上
@{Layout = null; }
觉得对你有帮助的,可以去给我开源项目点个星星
开源地址:https://github.com/wmowm/nh.core
转载于:https://www.cnblogs.com/tibos/p/8927988.html
第四章 .net core做一个简单的登录相关推荐
- 使用struts做一个简单的登录跳转
[java web]第一节课 3.7号作业 做一个非常简单的登录跳转界面,要求: 需要一个登陆界面用于接受用户输入的信息 输入姓名"wei"如果正确则跳转到"index. ...
- c#利用三层架构做一个简单的登录窗体
就个人而言,三层架构有点难理解,不知道该如何下手,各层与各层之间怎么调用 最近一直在研究三层架构,经过网上学习与多方打听写一下自己的心得.有不足之处,可以评论和私聊探讨 言归正传: 三层架构(3-ti ...
- element ui登录界面_Vue和Element-UI做一个简单的登录页面
如下所示,是vue+ElementUI写的一个登录页面: Login.vue部分 class="demo-ruleForm login-container"> 登陆界面 记住 ...
- net Core做一个webApi的简单实例
用NetCore 和Dapper 和mySql做一个简单的实例, 一准备工作 1:VS2017+windos系统,也可以用其他的操作系统和工具 2:一台Cenetos的虚拟机或者虚拟机 二:开始 1: ...
- D3.js的v5版本入门教程(第六章)——做一个简单的图表
D3.js的v5版本入门教程(第六章) 从这一章开始,进入正式的d3,js绘图阶段,有了前面几章基本知识的积累,这样看接下来的绘图代码才不会觉得比较辛苦 做一个简单的图表 为了做一个简单的图表,我们还 ...
- 程序猿修仙之路--数据结构之你是否真的懂数组? c#socket TCP同步网络通信 用lambda表达式树替代反射 ASP.NET MVC如何做一个简单的非法登录拦截...
程序猿修仙之路--数据结构之你是否真的懂数组? 数据结构 但凡IT江湖侠士,算法与数据结构为必修之课.早有前辈已经明确指出:程序=算法+数据结构 .要想在之后的江湖历练中通关,数据结构必不可少.数据 ...
- 给 asp.net core 写一个简单的健康检查
给 asp.net core 写一个简单的健康检查 Intro 健康检查可以帮助我们知道应用的当前状态是不是处于良好状态,现在无论是 docker 还是 k8s 还是现在大多数的服务注册发现大多都提供 ...
- python自己做个定时器_技术图文:如何利用 Python 做一个简单的定时器类?
原标题:技术图文:如何利用 Python 做一个简单的定时器类? 背景 今天在B站上看有关 Python 最火的一个教学视频 -- "零基础入门学习 Python",这也是我们 P ...
- 蚂蚁研究员玉伯:做一个简单自由有爱的技术人
玉伯 蚂蚁研究员 读完需要 10 分钟 速读仅需 1 分钟 玉伯,蚂蚁研究员,体验技术部负责人.2008 年加入淘宝,2012 年开始在支付宝致力于设计语言 Ant Design.数据可视化 AntV ...
最新文章
- Java帝国对Python的渗透能成功吗?
- Windows Mobile和Wince(Windows Embedded CE)的字符集问题
- 基于webpack搭建前端工程解决方案探索
- CodeForces - 1593G Changing Brackets(思维)
- mac apache服务器
- winform基础窗体设置及基础控件
- 桌面SVN检出这一选项消失
- mysql5.7.23主主重制_MySQL-23(主从复制)
- x12arima季节调整方法_你所不知道的秋冬季节养生要点,都在这里!
- 金融科技的别样财报:趣店坎坷后回暖、品钛首盈利
- python找不到模块pyodbc_python安装pyodbc模块
- spring boot引入JDK的jar,Jenkins自动化部署出错
- 使用NoteExpress/Citespace/VOSviewer/EndNote进行CNKI文献计量分析
- c语言求最小公倍数和最大公约数
- 各大程序员兼职平台靠谱嘛?这一篇文章就够了
- .net升级到4.0之后,出现;System.Windows, Version=2.0.5.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798...
- B站500万粉up主党妹被黑客勒索:交钱赎“人”!顶级安全专家:无解
- 发邮件时提示连接服务器失败,发送邮件时经常出现发送失败或是连接超时什么原因...
- 建设“东数西算”工程的实施办法以及背后价值
- Python3+pygame中国象棋 代码完整 非常好 有效果演示
热门文章
- 漫画:什么是 JVM 的垃圾回收?
- 芒果TV 2021 互联网人才招聘
- TIOBE 12 月编程语言:Python 有望第四次成为年度语言!
- 互联网人的求生战役!分享身边的 5 个故事
- 可怕!如果张东升是个程序员......
- VirtualBox虚拟机开机后台自启动
- 极速理解设计模式系列:23.装饰器模式(Decorator Pattern)
- The encryption certificate of the relying party trust identified by thumbprint is not valid
- qq邮箱高频率邮件来源自动屏蔽的信任办法
- sql 存储过程学习