一.前言 最近公司内部在对系统的安全进行培训,刚好目前手里的一个.net core 项目中需要增加预防xss的攻击,本文将大概介绍下何为XSS攻击以及在项目中如何统一的预防XSS攻击. 二.XSS简介 XSS 攻击全称为跨站脚本攻击( Cross-site Scripting ),XSS 是一种常见的 web 安全漏洞,它允许攻击者将恶意代码植入到提供给其他用户使用的页面中.XSS 一定是由用户的输入引起的,无论是提交表单.还是点击链接(参数)的方式,只要是输出的时候不做任何转义和过滤,就有可能…
在SpringBoot项目中添加logback的MDC     先看下MDC是什么 Mapped Diagnostic Context,用于打LOG时跟踪一个“会话“.一个”事务“.举例,有一个web controller,在同一时间可能收到来自多个客户端的请求,如果一个请求发生了错误,我们要跟踪这个请求从controller开始一步步都执行到了哪些代码.有哪些log的输出.这时我们可以看log文件,但是log文件是多个请求同时记录的,基本无法分辨哪行是哪个请求产生的,虽然我们可以看线程,但线程…
Adding a controller to a ASP.NET Core MVC app with Visual Studio 在asp.net core mvc 中添加一个控制器 2017-2-28 5 分钟阅读时长 By Rick Anderson The Model-View-Controller (MVC) architectural pattern separates an app into three main components: Model, View, and Contro…
Adding a model to an ASP.NET Core MVC app在 asp.net core mvc 中添加一个model (模型)2017-3-30 8 分钟阅读时长 本文内容1. Add a data model class添加一个数据模型类2. Scaffolding a controller控制器基架3. Add EF tooling and perform initial migration添加EF工具并做基本迁移4. Test the app测试应用5. Depen…
一.前言 在实际项目开发过程中,我们使用到的各种 ORM 组件都可以很便捷的将我们获取到的数据绑定到对应的 List<T> 集合中,因为我们最终想要在页面上展示的数据与数据库实体类之间可能存在很大的差异,所以这里更常见的方法是去创建一些对应于页面数据展示的 `视图模型` 类,通过对获取到的数据进行二次加工,从而满足实际页面显示的需要. 因此,如何更便捷的去实现 数据库持久化对象 与 视图对象 间的实体映射,避免我们在代码中去一次次的手工实现这一过程,就可以降低开发的工作量,而 AutoMapp…
一.前言  最近有在看 DDD 的相关资料以及微软的 eShopOnContainers 这个项目中基于 DDD 的架构设计,在 Ordering 这个示例服务中,可以看到各层之间的代码调用与我们之前传统的调用方式似乎差异很大,整个项目各个层之间的代码全部是通过注入 IMediator 进行调用的,F12 查看源码后可以看到该接口是属于 MediatR 这个组件的.既然要照葫芦画瓢,那我们就先来了解下如何在 ASP.NET Core 项目中使用 MediatR. 代码仓储:https://git…
一.前言 在项目的前端开发中,对于绝大多数的小伙伴来说,当然,也包括我,不可避免的需要在项目中使用到一些第三方的组件包.这时,团队中的小伙伴是选择直接去组件的官网上下载,还是图省事直接在网上搜索,然后从一些来源不明的地方下载,我们就无法管控了.同时,我们添加的组件间可能存在各种依赖关系,如果我们没有正确下载引用的话,到最后可能还是无法正常使用. 因此,如何从可信的源下载组件包,以及如何轻松的解决各个组件间的依赖关系就成了我们需要解决的问题,那么,有没有一种工具可以帮我们解决这一问题?你好,有的,…
Entity Framework 的小实例:在项目中添加一个实体类,并做插入操作 1>. 创建一个控制台程序2>. 添加一个 ADO.NET实体数据模型,选择对应的数据库与表(StudentModel.edmx)3>. 控件台代码 static void Main(string[] args) { // 创建一个网关接口,TestData是数据库名 TestDataEntities td = new TestDataEntities(); // 创建一个实体对象,Student是表映射过…
在android项目中添加第三方jar包虽然不是一个很复杂的问题,但是确实给很多开发者带来了不小的困扰.我自己就曾经碰到过calss not found exception.error inflating class等本质都是第三方jar包未被真正识别但报错指向其他问题的状况,碰到这类问题时我们很容易会被这些指向不够准确的报错误导,因此正确地添加第三方jar包就显得很重要.网上关于这个问题的信息也比较杂乱,因此希望借此文章对这个问题进行明确的解释和解答. 首先要说的是为什么会出现这个问题?我们在…
如何在VUE项目中添加ESLint 1. 首先在项目的根目录下 新建 .eslintrc.js文件,其配置规则可以如下:(自己小整理了一份),所有的代码如下: // https://eslint.org/docs/user-guide/configuring module.exports = { //此项是用来告诉eslint找当前配置文件不能往父级查找 root: true, //此项是用来指定eslint解析器的,解析器必须符合规则,babel-eslint解析器是对babel解析器的包装使…
在 ASP.NET MVC 早期版本中,我们可以通过在应用的 RegisterRoutes 方法中设置 routes.LowercaseUrls = true ; 来将页面的 URL 链接转小写.在 ASP.NET Core MVC 中,路由的配置类似与下面的代码: app.UseMvc(configureRoutes => { configureRoutes.MapRoute("Default", "{controller=App}/{action=Index}/{i…
Adding a view to an ASP.NET Core MVC app 在asp.net core mvc中添加视图 2017-3-4 7 分钟阅读时长 本文内容 1.Changing views and layout pages 修改视图和布局页 2.Change the title and menu link in the layout file 在布局文件中修改标题与菜单 3.Passing Data from the Controller to the View 从控制器向视图…
1. 在项目中添加winows服务 今天刚刚为自己的项目添加了windows服务,以服务的形式运行后台系统,为前端提供接口服务,下面说一下具体怎么为vs项目添加windows服务 2. 添加Windows服务安装程序 在上图空白处点击右键,如下图所示 VS2015会自动新建一个带有默认配置的安装程序类,如下图: i 3. 给默认的serviceInstaller1和serviceProcessInstaller1的属性进行置 如下图所示: 4. 设置window是服务代码: using Syst…
在项目中添加log4j.xml文件 log4j.xml文件 <?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"> <appen…
[问题] 关于iOS/iPhone中的文件选择对话框,用于用户去选择图片等文件 过程中,问题转换为,需要给当前iOS项目中,添加一个图片. 类似于Windows开发中的资源文件,其中图片文件属于资源的一种. 并且,接着可以正确显示图片. [解决过程] 1.对于如何给iOS工程中添加类似于微软开发过程中的资源文件,即图片,此处到网上搜了,但是只找到官网的解释: Custom Icon and Image Creation Guidelines 但是其只是解释对于各种的icon建议使用何种大小之类的…
一. 问题概述 我们知道Intellij IDEA是非常好用的Java语言开发的集成环境.提供了非常多实用的功能,包括了智能代码助手.代码自动提示.代码重构.各种插件等,当然也集成了maven 正常情况下,我们创建maven项目时,相关的jar包会自动导入,当然我们也可以通过IDEA右侧的maven工具来实现jar包的加载. 但我们在实际开发过程中,可能会使用外部jar包的情况,如实现与第三方公司的系统对接时,需要使用到他公司提供的jar包,这个时候在maven中央仓库找不到,该如何导入呢? 首…
1 了解CSRF的定义 CSRF(Cross-site request forgery)跨站请求伪造,也被称为"One Click Attack"或者Session Riding,通常缩写为CSRF或者XSRF,是一种对网站的恶意利用.尽管听起来像跨站脚本(XSS),但它与XSS非常不同,XSS利用站点内的信任用户,而CSRF则通过伪装来自受信任用户的请求来利用受信任的网站.与XSS攻击相比,CSRF攻击往往不大流行(因此对其进行防范的资源也相当稀少)和难以防范,所以被认为比XSS更具…
前言   上篇文章中提到了 XSS 攻击,而且,也从几个方面介绍了 XSS 攻击带来的严重影响.那么,这篇文章中,主要是针对 XSS 攻击做一个基本的防御,看看可以通过几种方式来修复这个特别常见的安全漏洞.   由于公司用的是 SpringMVC,因此,这次就主要基于 SpringMVC 来解决这些漏洞.当然,其实这些解决方案都是大同小异,对于什么环境来说根本无所谓.了解了原理,什么环境.什么语言都可以运用自如了.废话就不多说了,直接上解决方案.     解决方案   方案一   方案一主要是利…
环境准备 .Net Core 版本:下载安装.Net Core SDK,安装完成之后查看sdk版本 ,查看命令dotnet --version,我的版本是2.2.101 IDE: Visual Studio 2017 目标:将 我的GitHub项目 Captcha.WebApi 改造,在项目中使用TypeScript 运行环境准备 安装Node.js 如果已经安装请忽略,https://nodejs.org/zh-cn/ 下载nodejs,我选择的是LTS版本. 安装完成之后验证是否安装成功.c…
注:网络上搜索到的关于VsCode创建调试.Net Core 项目的文章都比较老旧,不能完全参考使用,根据网络文章.微软官方文档的指导下,学习并整理此文档,但也大体和文档学习路线相似,主要为记录学习过程. 原文地址(个人博客):http://www.gitblogs.com/Blogs/Details?id=1fe78f56-62c1-4e00-9ba9-b02d03f4d98b 准备工作 1.下载并安装VSCode 2.安装.Net Core SDK 3.安装C#插件,C# Extension…
在.NET Framework中使用UEditor时,只需要将UEditor提供的后端服务,部署为一个子程序,即可直接使用文件上传相关的服务,但是UEditor官方并未提供.Net Core的项目,并且.NET Core项目很多时候是跑在Linux上面的,也没有子程序一说. 为了解决这个问题,我开发了一个.NET Core版本的后端服务,他已经在Github上开源https://github.com/baiyunchen/UEditor.Core,并提供了比较优质的中文文档供大家参考. 大家可以…
照前文 http://www.cnblogs.com/wtang/articles/4133820.html  给电脑设置了WebStorm的IDE的nodejs开发环境.新建了个express的网站项目.想给网站增加数据库功能,于是需要导入一个包(packages).在nodejs中操作mongodb很方便的包是mongoose.那么在WebStorm中添加包的方法是 我的WebStorm的版本是8.0.3,在File->Settings->(Project Settings[项目名]) N…
最近一直在做UWP开发,为了节省成本等等接触到MVVMlight,觉得有必要发点时间研究它的用法与实现原理才行.如果有问题的地方或者有好的建议欢迎提出来. 随着移动开发的热门,Mvvmlight在Android,Ios,WPF,Silverlight以及UWP等分层开发中被广泛应用.同时Mvvmlight也支持Xamarin开发.Mvvmlight字面意思也容易理解:轻量级Mvvm框架,相对于微软最近开源Prism而已确实简单易懂.要理解Mvvmlight首先得理解MVVM框架: 在具体讲解其原…
转:http://blog.csdn.net/qiujuer/article/details/24209457 为了适应潮流使用Android Studio还是有半年多了! 对于从Eclipse迁移项目到Android Studio中添加.jar文件和.so文件无疑是一件很重要也是很头疼的问题! 在最新版本中,默认是自动打包libs下面的所有.jar文件的,所以jar不用多讲了. 加入.SO(这个是要看你的项目Gradle版本) 提示:都是设置build.gradle文件 (1)老版本,好像是指…
首先,在项目中的classes 中新建立一个log4j.properties文件即可: 在实际编程时,要使Log4j真正在系统中运行事先还要对配置文件进行定义.定义步骤就是对Logger.Appender及Layout的分别使用.Log4j支持两种配置文件格式,一种是XML格式的文件,一种是java properties(key=value)[Java特性文件(键=值)].(这里只说明properties文件) 1.配置根Logger 其语法为: log4j.rootLogger = [ lev…
本文组织有点乱,先说结论吧: 1 在 project.json 文件中声明包引用. 而不是像以前那样可以直接引用 dll. 2 使用 dotnet restore 命令后,nuget 会把声明的依赖项下载 到本机全局package缓存(如果没有的话),而不是 以前那样在解决方案根目录下创建一个package目录. 这样的好处是一台机器共享同一个 package 库,免得每次都重新下载. 3 在发布时,这些引用的dll会被放到publish目录中,进入运行环境. 4 如果要引用自己的私有类库,也需…
1.打开项目,把.dll文件放入项目中: 2.在工具栏中添加一个自定义选项卡…
原文:<Google Analytics tracking code into Django projects, the easy way> 对我来说,制作一个可扩展的Django应用随时可以添加谷歌统计实在是太难了.所以我写这篇文章作为快速手册,以便用于以后的Django Web开发时使用. 在Django项目中使用谷歌统计有两个前提条件: 你需要拥有谷歌统计的ID和你网站的域名 不能在settings.DEBUG模式下使用 设置变量 如下的一些变量需定义在setting.py文件中 GOO…
1.首先在templates文件夹下面定义一个新页面,xxx.html,template文件夹在空项目里面是没有的,需要手动添加一个,放在WWW文件夹下面. <ion-modal-view> <ion-header-bar> <h1 class="title">My Modal title</h1> </ion-header-bar> <ion-content> Hello! </ion-content>…
想要使用Java连接MySQL数据库,必须在环境中加入配置JDBC驱动程序 Netbeans中添加JDBC的过程是: 1.首先需要下载JDBC 在百度中搜索“mysqljdbc驱动下载”,找到官网 或者直接搜索此网址进入官网: https://www.mysql.com/products/connector/ 然后找到JDBC下载即可: 2.接着打开Netbeans找到需要添加JDBC驱动程序的项目,点开后找到库,右键点击添加库... 3.找到MySQL JDBC驱动程序,单击后,点击添加库即可…