- 博客(48)
- 收藏
- 关注
原创 跨域请求携带cookie
默认情况下是跨域是不会携带cookie的,例如:a.com 网站请求 b.com 的接口,这个时候不会把a.com这个域名下的 cookie 携带上。如果需要携带,则需要做一下配置。
2022-11-14 13:44:27
952
原创 本地nodejs服务如何快速启用https访问
最近在做一个需求,需要用到HTTPS才能访问,因为是nodejs server的项目,不是webpack起的项目,所以没办法直接用webpack-dev-server。1、Nginx来做反向代理:通过openssl生成证书,配置到 nginx,映射9000端口 ( 跑在80端口需要sudo )到本地服务的8080端口。本地服务运行在8080端口,可以映射到9000端口进行访问,如果映射到80端口则需要管理员权限来运行。但是后来发现了一个更简单的方式:使用 local-ssl-proxy。
2022-11-14 11:32:14
545
原创 live-server 的使用
live-server 是一款 npm 工具,全局安装 npm i -g live-server 后,项目目录使用 live-server 命令行命令便可直接在浏览器中预览(默认找 index.html,其他需要带上文件名空格后跟在后面),并且自动全局监听实时更新。但现在流行修改文件浏览器自动刷新 hot socketing(热拔插),如 live-reload。本地开发常常需要搭建临时的服务,第一时间我们会想到用 http-server。而 live-server 实现了上面这三个插件的功能。
2022-10-24 13:51:54
1905
原创 yarn 报错 There appears to be trouble with your network connection. Retrying
用yarn 安装依赖时,一直显示 There appears to be trouble with your network connection. Retrying,多次尝试也还是安装不起来。
2022-10-22 21:47:34
592
原创 离开浏览器事件 beforeunload 不起效果?
开页面前提示用户即将离开页面。于是百度到了 beforeunload 事件,但是发现怎么都无效。今天终于知道了正确的用法
2022-10-11 16:33:56
972
原创 如何给 el-input 添加键盘回车事件
查找 Element UI 的 input输入框组件(el-input组件),都没有发现可以给输入框添加的回车键监听事件,因为Element UI对其做了进一步封装,想要直接添加 @keydown(或者@keyup.enter)是无效的。发现,添加了 .native 修饰符的 el-input 组件会有原生的 keyup 事件,其实就是在组件的根标签上添加了一个事件监听。要想在el-input中实现回车键监听事件,需要在@keyup.enter后面加上.native,即。
2022-09-29 10:24:07
1511
原创 使用 elementUI中el-dialog 或者说 Vue 现存的一个bug分析
在使用 el-dialog 组件填写内容后,创建新的item,发现使用 v-for 循环渲染的数据不会发生更新,element-ui 版本是 2.15.6 ,vue 版本是 2.6.14。
2022-09-18 10:53:55
270
原创 安装nvm后 nodemon 无法使用
尝试了网络上非常多的解决方案,都无法解决这个问题。通过更改 npm prefix 路径得以解决。设置完成后重装 nodemon。
2022-08-30 17:20:01
275
原创 git忽略文件不生效
gitignore文件不生效使用git提交代码希望忽略某些文件时,需要配置.gitignore。不过已经提交后文件,再修改.gitignore文件会没有效果。
2022-08-05 13:44:30
1268
原创 CentOS6 yum install wget失败
使用CentOS6.1运行yum-yinstallwget安装wget时报错失败了,于是百度谷歌搜索了一大堆,尝试之后都不行,之后发现直接替换repo文件就能搞定。2、更改CentOS-Base.repo里的内容。完成以上步骤,即可正常安装wget。...
2022-08-01 22:37:48
1080
2
原创 Git:撤销 commit 提交或撤销对远程仓库的push操作
Git:撤销 commit 提交或撤销对远程仓库的push操作,gitreset–-soft表示只是改变了HEAD的指向,本地代码不会变化,我们使用gitstatus依然可以看到,同时也可以gitcommit提交。gitreset–-hard直接回改变本地源码,不仅仅指向变化了,代码也回到了那个版本时的代码。意思是不删除工作空间改动代码,撤销commit,并且撤销gitadd.操作。...
2022-07-31 19:04:44
11669
1
原创 VmWare 虚拟机安装CentOS及网络配置
虚拟机VMware操作系统新建虚拟机选择自定义3.选择虚拟机硬件兼容性,我们用默认下一步即可安装客户机操作系统->安装来源->选择稍后安装操作系统接下来选择我们要安装的系统类型和操作系统版本将系统放到合适的位置注这里指定的磁盘容量大小为最大的容量,不会在一开始就将主机的磁盘空间分配出去,而是随着虚拟机里的数据量增大,磁盘的占用空间才会增大。完成创建虚拟机之后,我们开始把CentOS的镜像导入进去添加BOOTPROTO=“dhcp”,修改ONBOOT=“yes”...
2022-07-30 17:37:36
1385
原创 google/facebook第三方登录
开发者平台配置https://console.cloud.google.com/apis/credentials?project=academic-elixir-353301配置教程: https://developers.google.com/identity/sign-in/web/sign-in使用jsonwebtoken库将token解密得到邮箱https://developers.facebook.com/apps/535863411418583/dashboard/配置教程: https://s
2022-07-12 17:18:23
614
原创 web资源部署后navigator获取不到mediaDevices实例的解决方案(navigator.mediaDevices为undefined)
最近在开发中,有一个功能需要实现录制屏幕的功能,我这边使用了recordrtc库,在过程中本地开发都没有问题,部署到线上环境时出现 navigator.mediaDevices为undefined,查找了不少文章和官方文章才得以解决由于浏览器的安全策略导致了这个问题,目前经尝试,在以下几种情况中 navigator.mediaDevices 可以正常使用另附上 recordrtc 使用源码以供参考 (参考源码使用了element UI)...
2022-07-01 15:19:10
2338
原创 如何统一项目中包管理器的使用?
在协作开发中发现的问题,因为使用了不同的包管理器,导致在本地开发环境一切正常的代码推送到git后在同事的电脑上构建中却意外的失败了,这是为什么呢?我们在最后查看node_module中的内容时发现,由于使用的不同的包管理器导致安装了有差异的依赖最终导致的这个问题。这里我们通过一份预安装脚本来限制使用相同的包管理器,同时使用yarn.lock或package-lock.json来锁定我们的依赖版本。以下介绍几种解决方案完整代码完整代码三、only-allow方案但是在 NPM v7 以后的版本中
2022-06-29 14:08:27
168
原创 cdn挂了,前端如何动态切换cdn链接呢?
为了提高项目的访问速度,使用cdn提升访问速度是非常有效的方案,同时提高网站稳定性、安全性,并且无需修改现有的业务逻辑。采用免费的cdn提供商,还能降低网站流量成本,但是cdn服务也不是无限运行的,如果挂了我们应该怎么办,手动更换cdn提供商? 不,我们将采取一种更加智能的解决方案,通过监听script标签的onerror事件,从候选cdn链接中进行切换。以下代码可以应对一些应用场景...
2022-06-28 14:48:27
668
原创 post请求出现WebKitFormBoundaryk的解决办法
在请求体中的数据出现以下情况时,------WebKitFormBoundaryk4y2P2fXBa25G7XA1dContent-Disposition: form-data; name="code"123------WebKitFormBoundaryk4y2P2fXBa25G7XA1d--
2022-06-26 17:10:48
3785
原创 yarn.lock 和 package-lock.json 相互转换
安装 synp : npm install -g synp在项目同级目录下输入以下命令yarn.lock => package-lock.jsonpackage-lock.json => yarn.lock
2022-06-10 17:58:10
921
原创 webpack5 不再为Node.js模块自动引用 Polyfills
错误描述ERROR in ./node_modules/dropbox/dist/Dropbox-sdk.min.js 1:30619-30636Module not found: Error: Can't resolve 'crypto' in '/.../node_modules/dropbox/dist'BREAKING CHANGE: webpack < 5 used to include polyfills for node.js core modules by default.T
2022-05-08 15:02:29
1268
4
原创 为什么(new Date()== new Date())为假,而(Date()== Date())为真?
情景一:function isSame (arg1, arg2) { return arg1 == arg2}let today = Date()let tomorrow = Date()console.log(today)console.log(tomorrow)console.log(isSame(today, tomorrow))isSame 返回 true 。但是,当我使用Date作为构造函数(带有 new)时情景二:function isSame (arg1, ar
2022-04-26 10:39:06
1007
原创 使用 RSA 进行加解密
在某些业务中我们可能为了要保证数据传输的安全性,需要对一些数据进行加密传输在这里我建议使用RSA非对称加密进行加密,可以将公钥存储在web端,私钥存储在serve端前端加解密<script src="https://cdn.bootcss.com/jsencrypt/3.0.0-beta.1/jsencrypt.min.js">//需要引入一个rsa算法</script><script> let encrypt = new JSEncrypt(); c
2022-04-19 17:45:02
4909
原创 借助 cryptojs实现 AES 加解密
const CryptoJS = require("crypto-js");// CBC const key = CryptoJS.enc.Utf8.parse("qsc6d2ir3asvhfer"); // CBC使用16位加密const iv = CryptoJS.enc.Utf8.parse("okmcs9v4a2sd2g1e");/** * 解密方法 * @param {*} word * @returns */function Decrypt(word) { let decr
2022-04-19 15:18:30
1055
原创 git实用技巧:将多次commit合并为一次
使用 git rebase -i 命令就可以将从最后一次提交往前的多次提交合并为一次。举例输入以下命令:git rebase -i a77517ad7fda85ba98f207既然要把最上面的合并成一次,那么git rebase -i 后面跟的参数应该是想要合并的最前面commit id的上一个,就是a775…这个之后会弹出现目的编辑窗口:这是一个vim编辑的文本,需要使用vim命令进行编辑。1、首先,输入i命令,进入编辑模式。2、我们需要关注的是最上面几行以pick开头的信息。需要把
2022-03-31 16:46:23
7834
原创 [vue/no-multiple-template-root] The template root requires exactly one element.eslint-plugin-vue
[vue/no-multiple-template-root] The template root requires exactly one element.eslint-plugin-vueVue3.0 脚手架报错[vue/no-multiple-template-root] The template root requires exactly one element.eslint-plugin-vue有道翻译:[vue/no-multiple-template-root]模板根需要一个元素。
2022-03-31 15:49:15
5093
原创 ESLint fix自动修复所有格式问题
ESLint fix自动修复所有格式问题"lint": "eslint --fix --ext .js,.vue ./",
2022-03-30 13:55:15
1278
3
原创 使用火绒后连接FTP服务器失败
本来电脑使用FTP一切正常的,但是在安装了火绒之后,其它设备就无法连接ftp了,即使设置了放行tcp的规则也不行,只要装上就连不通,而且火绒软件也没有提示拦截,直接静默阻止了,卸载火绒之后又立马可以连上。我遇到这个问题后通过百度、谷歌,最终发现FTP客户端工具并没有完全允许通过防火墙,通过设置成功解决1、首先找到控制面板找到我们的防火墙2、找到允许应用或功能通过windows defender防火墙3、找到FTP客户端工具,并且要都勾上允许通过4、设置完成后,重新连接FTP服务器即可成功
2022-01-11 20:10:19
1192
原创 react-native run-android 报错Failed to install the following Android SDK
react-native run-android启动之后发现出现以下错误,导致不能正常启动 Android 工程。Failed to install the following Android SDK packages as some licences have not been accepted. build-tools;28.0.3 Android SDK Build-Tools 28.0.3 platforms;android-28 Android SDK Platform 28To
2022-01-07 23:13:06
1427
原创 如何使用a标签下载文件
在开发过程中,可能需要实现下载文件的操作,这时我们可以采取以下方法实现该功能1、a标签下载文件<a href="完整下载地址"></a>但是这样会有一个问题,就是下载是可以下载了,但是同样触发了a标签的页面跳转功能。<a :href="`${完整的下载地址}`" target="downloadFile">{{文件名称}}</a><iframe style="display: none;" name="downloadFile"><
2022-01-07 21:31:57
38946
3
原创 Host is not allowed to connect to this MySQL server解决方法
Host is not allowed to connect to this MySQL server解决方法今天在阿里云的一台服务器上面装完MySQL后,在本地登录MySQL没问题,但是远程登录的时候却出现的报错报错内容:Host is not allowed to connect to this MySQL server找了半天试了网上的一些方法都没有解决,最终在一篇文章里找到了解决方法,特意记录一下。先说说这个错误,其实就是我们的MySQL不允许远程登录,所以远程登录失败了,解决方法如下:
2021-12-19 20:18:02
738
原创 webpack配置
在平时的开发中总结了一些比较常用的配置信息,分享给有需要的小伙伴,同时也是给自己的一份webpack配置笔记。大体配置/** * webpack.config.js webpack 配置文件 * 作用:指示webpack 干哪些活 * 所有构建工具都是基于node.js平台运行~模块化采用common.js */// resolve用来拼接绝对路径的方法const {resolve} = require('path');const HtmlWebpackPlugin = require('
2021-12-16 22:48:04
67
原创 解决OpenSSL SSL_read: Connection was reset, errno 10054问题
当我们写好代码时正准备push到远程仓库时出现了这个error解决办法找到.gitconfig文件,在http项添加 sslVerify = false也可以在git项目目录下在命令行中输入 git config http.sslVerify false注:上面的方法是针对于单个项目的,如果希望对所有库都关闭SSL效验,那就要用下面这句git config --global http.sslVerify false...
2021-12-13 23:24:49
3365
1
原创 git pull和git clone都是拉代码,它们有什么区别呢?
是否需要本地初始化仓库git clone是将整个工程复制下来,所以不需要本地是仓库(即没有.git文件夹)git pull需要先初始化本地文件夹作为一个仓库切换分支的问题clone出的项目可以自由切换远端已有的分支pull只能在当前分支push的问题clone下来的项目可以直接指定分支推送到远程仓库pull下来的项目需要先执行remote add origin 命令来添加远程仓库url,然后才能push使用场景通常情况下,远程操作的第一..
2021-12-11 11:24:41
1475
原创 yarn create umi报错
明明是按照umi官网的步骤创建项目为什么还会报错呢?于是我找遍了网上的解决方法,最后得到以下两种解决方案第一种比较常见的解决方法找到node安装目录下的node_global下的bin目录(每个人的电脑可能目录略有区别)右键create-umi.cmd 编辑 将文本改为如下,删掉前面‘%~dp0\’符号此时不要yarn create umi创建项目,否则又会重新覆盖这个文件为原来的样子只需create-umi即可,若是提示“不是内部或外部命令” 需要将create-umi.cmd 的目录
2021-12-03 23:35:05
2325
1
原创 面试中可能会被问到的http缓存问题
经过几次校招中的面试,发现http缓存这个知识点一直被拿来当成面试题,我第一次遇到这个问题时被问得一脸懵,于是便总结出以下的内容在任何一个前端项目中,访问服务器获取数据都是很常见的事情,但是如果相同的数据被重复请求了不止一次,那么多余的请求次数必然会浪费网络带宽,以及延迟浏览器渲染所要处理的内容,从而影响用户的使用体验。如果用户使用的是按量计费的方式访问网络,那么多余的请求还会隐性地增加用户的网络流量资费。因此考虑使用缓存技术对已获取的资源进行重用,是一种提升网站性能与用户体验的有效策略。缓存的原理是在
2021-12-03 23:10:30
261
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人