这篇文章上次修改于 318 天前,可能其部分内容已经发生变化,如有疑问可询问作者。

问题和收获

brew的问题

安装nginx是遇到的问题,在brew cleanup是报如下错

Error: Permission denied @ apply2files - /usr/local/share/Library/Caches/Yarn/v4/npm-@tarojs-taro-1.3.14-ed54fa30d9114624c11cd20d6302a83a9861cb6a/node_modules/@tarojs/taro/dist/.DS_Store

原因

文件夹没有读写权限

解决办法

 sudo chmod -R 777 /usr/local/share/Library/Caches

然后在安装就没问题了

阿里云服务器

安装node

https://www.jianshu.com/p/8cdbe4f4b533

安装pm2

npm i -g pm2

这样还不行,需要设置软连接

ln -s /node-v11.11.0/bin/pm2/bin/pm2 /usr/bin/pm2

ok!

连接服务器

// --- 登入
$ ssh 用户名@公网IP  // eg: ssh xiaoliu@32.123.123.34
输入密码

// --登出
$ exit

cookie和token的五点区别

1、token和cookie一样都是首次登陆时,由服务器下发,都是当交互时进行验证的功能,作用都是为无状态的HTTP提供的持久机制。

2、token存在哪儿都行,localstorage或者cookie。

3、token和cookie举例,token就是说你告诉我你是谁就可以。

cookie 举例:服务员看你的身份证,给你一个编号,以后,进行任何操作,都出示编号后服务员去看查你是谁
`
token 举例:直接给服务员看自己身份证

4、对于token而言,服务器不需要去查看你是谁,不需要保存你的会话。当用户logout的时候cookie和服务器的session都会注销;但是当logout时候token只是注销浏览器信息,不查库。

5、token优势在于,token由于服务器端不存储会话,所以可扩展性强,token还可用于APP中。

总结:

Token 完全由应用管理,所以它可以避开同源策略

Token 可以避免 CSRF 攻击

Token 可以是无状态的,可以在多个服务间共享

小程序文本不自动换行问题

css样式加上以下内容就ok了

word-wrap: break-word;
word-break: break-all;
white-space: pre-line;

封装浏览器下载文件函数

function downloadFile(url, openTab = true, fileName) {
  if (!url) return;
  let link = document.createElement('a');
  link.href = url;
  link.download = name || url;
  if (openTab) {
    link.target = 'view_window';
  }
  link.click();
  link = null;
};

node-sass问题

npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! node-sass@4.7.2 postinstall: `node scripts/build.js`
npm ERR! Exit status 1
.....

$ npm install node-sass@4.7.2 --ignore-scripts

这种解决方式忽略了一些依赖的安装,会遇到其他bugg,我遇到的是node-sass版本太低,和操作系统或者noide版本不兼容,升级根据官网提供的信息,升级一下node-sass就解决了

Xampp的数据库在项目中找不到

找到相应的.sock文件,并设置php.ini文件中的pdo_mysql.default_socket的值为.sock文件的路径。

pdo_mysql.default_socket= /var/lampp/var/mysql/mysqld.sock