Atwood定律:凡是能用JavaScript写出来的,最终都会用JavaScript写出来

 

详解 RESTful API 中的动词覆盖

喝最烈的酒,骑最野的马。。。今天,写篇文章介绍一下 RESTful API 中的动词覆盖吧。在开发各种小程序的时候,总是会遇到不能正常支持 HTTP 请求的平台,比如支付宝小程序只支持 GET 和 POST 请求,这时候充分利用 HTTP 请求方法的 RESTful API 就会遇到问题,不支持 PUT, PATCH, DELETE 请求,该怎么办呢?嗯,使用动词覆盖。什么是动词覆盖我最初遇到不支
ngtwewy 2020-04-09    RESTful API   

函数限流,防止多次触发函数 Debounce 和 Throttle 的原理及实现

场景1,有些用户很调皮,快速多次点击一个按钮。2,用户不必特地捣乱,他在一个正常的操作中,都有可能在一个短的时间内触发非常多次事件绑定程序。比如页面绑定的 resize 事件。分析怎么解决?函数节流就是一种办法。函数节流,简单地讲,就是让一个函数无法在很短的时间间隔内连续调用,只有当上一次函数执行后过了你规定的时间间隔,才能进行下一次该函数的调用。函数节流的原理挺简单的,估计大家都想到了,那就是定
ngtwewy 2020-04-07    JavaScript   

Node.js 递归遍历目录

遍历目录遍历目录是操作文件时的一个常见需求。比如写一个程序,需要找到并处理指定目录下的所有JS文件时,就需要遍历整个目录。递归算法遍历目录时一般使用递归算法,否则就难以编写出简洁的代码。递归算法与数学归纳法类似,通过不断缩小问题的规模来解决问题。以下示例说明了这种方法。function factorial(n) { if (n === 1) { return 1; } else { ret
ngtwewy 2020-04-06    Node.js   

PHP 如何防止 CSRF 跨站域请求伪造

CSRF 背景与介绍CSRF(Cross Site Request Forgery, 跨站域请求伪造)是一种网络的攻击方式,它在 2007 年曾被列为互联网 20 大安全隐患之一。其他安全隐患,比如 SQL 脚本注入,跨站域脚本攻击等在近年来已经逐渐为众人熟知,很多网站也都针对他们进行了防御。然而,对于大多数人来说,CSRF 却依然是一个陌生的概念。即便是大名鼎鼎的 Gmail, 在 2007 年
ngtwewy 2020-04-05    PHP   

如何让网页变灰 CSS3 filter(滤镜) 属性

代码示例:html{ -webkit-filter:grayscale(100%); -moz-filter:grayscale(100%); -ms-filter:grayscale(100%); -o-filter:grayscale(100%); filter:grayscale(100%); filter:url("data:image/svg+xml;utf8,#graysc
ngtwewy 2020-04-04    CSS   

为什么日本动漫中会出现大眼睛,多发色,多瞳色

原因在动漫圈尽人皆知——降低绘画的难度。先说彩色的问题吧动画分清人物的两大法宝:发型,发色。作为对比,请看黑头发黑眼睛的情况这是相当NB的画师画的单幅肖像,尚且存在第一眼认错的情况,那动画片是什么情况我就不用说了。换成这张你再看看,能认错?很多画家比如平井久司,还比如平井久司,又比如平井久司,抹去发型和发色差别后就没法看了。同理,大部分动画角色从来不换发型。头发五颜六色是因为黑金棕三色实在不够用,
ngtwewy 2020-04-03    PS 手绘   

为什么 PDO 无法捕获异常

场景:有些复杂的原生SQL语句查询,出错了没有报错:try{ $sth = $dbh->prepare($sql); $sth->execute(); $articles = $sth->fetchAll(\PDO::FETCH_ASSOC); } catch (\PDOException $e){ return $this->json($e->getMe
ngtwewy 2020-03-29    PHP   

PHP 一次查询生成二维 Json

场景:一次查询,返回给前端一个列表,需要在列表的每一项中加一个相关子对象。比如,返回给前端一个文章列表,列表中的每一项中,都要有一个文章作者的信息对象,如下:{ "count": "548", "list": [ { "id": "620", "user_id": "1", "category_id": "17", "name": "买藕了",
ngtwewy 2020-03-29    PHP   

Apache 虚拟主机中设置 PHP 环境变量,open_basedir 相关

知识回顾:open_basedir是php.ini中的一个配置选项它可将用户访问文件的活动范围限制在指定的区域,假设open_basedir=/home/wwwroot/home/web1/:/tmp/,那么通过web1访问服务器的用户就无法获取服务器上除了/home/wwwroot/home/web1/和/tmp/这两个目录以外的文件。注意用open_basedir指定的限制实际上是前缀,而不是
ngtwewy 2020-03-25    Apache   

CentOS 8 Apache 使用 ModSecurity 防止 DDOS

问题:1,CentOS 7 中的源中默认有 mod_evasive,而 CentOS 8 中没找到 mod_evasive。2,Apache 官方文档中,关于 Denial of Service (DoS) attacks 没有类似 mod_evasive 的功能。官方建议限制 IP 连接数相关的方法,最好使用操作系统上的防火墙。http://httpd.apache.org/docs/curre
ngtwewy 2020-03-22    Apache   

CentOS 8 安装 MySQL 5.7 或 MySQL 8

CentOS 8 默认是可以安装 MySQL 8。https://dev.mysql.com/downloads/repo/yum/https://dev.mysql.com/doc/mysql-yum-repo-quick-guide/en/第一步,添加源文件手动添加文件/etc/yum.repos.d/mysql-community.repo,然后加入下面内容到文件里。安装 MySQL 8.0
ngtwewy 2020-03-20    CentOS   

CentOS 8 源 yum/dnf 源添加、删除和优化

CentOS 由于很追求稳定性,所以官方源中自带的软件不多,因而需要一些第三方源,比如 EPEL、ATrpms、ELRepo、Nux Dextop、RepoForge 等。根据上面提到的软件安装原则,为了尽 可能保证系统的稳定性,此处大型第三方源只添加 EPEL 源、Nux Dextop 和 ELRepo 源。执行yum源更新命令 yum repolist #查看已安装的源 yum makeca
ngtwewy 2020-03-20    CentOS   

移动端UI设计规范「小白干货」

从事UI设计,一直没看到完整版的UI设计规范学习资料,特此总结整理方便大家学习交流~一,关于UI规范的理解很多新人在开始做移动端UI设计的时候,往往对界面的一些尺寸规范不是十分清楚,对做UI设计的基础概念也没有清晰的认识,很多时候都是凭借自己的感觉和经验去绘制界面,心里并没有一个清晰的概念,导致做出来的页面总是不那么尽如人意。本文整理汇总了一些界面设计(iOS系统)中常用的一些尺寸规范和方法,如控
ngtwewy 2020-03-20    UI 设计   

CentOS 8 安装 Apache 和 PHP

一,安装 Apachesudo dnf install httpd sudo dnf install mod_security mod_ssl 安装完成后,启用并启动Apache服务:sudo systemctl enable httpd sudo systemctl restart httpd 配置 Apache ModSecurity# cd /etc/httpd # git clo
ngtwewy 2020-03-20    CentOS   

在 CentOS 8 上使用 DNF 管理软件包

DNF代表Dandified YUM是基于RPM的Linux发行版的软件包管理器。它用于在Fedora / RHEL / CentOS操作系统中安装,更新和删除软件包。 它是Fedora 22,CentOS8和RHEL8的默认软件包管理器。 DNF是YUM的下一代版本,并打算在基于RPM的系统中替代YUM。 DNF功能强大且具有健壮的特征。DNF使维护软件包组变得容易,并且能够自动解决依赖性问题。
ngtwewy 2020-03-19    CentOS