自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

相守之路

回归初心,一路相守,记录所学所想所得

  • 博客(21)
  • 收藏
  • 关注

原创 Golang——defer的学习及使用

defer学习及使用一、defer后面必须是函数或方法的调用,不能是语句二、defer函数的参数传递为值拷贝三、defer语句必须先注册后执行四、主动调用`os.Exit(int)`退出进程时,defer将不再执行五、多个需要关闭资源的场景,可以避免资源泄漏六、副作用七、不要对有名返回值参数进行操作Go提供了defer关键字,可以注册多个延迟调用,这些调用以先进后出(FILO)的顺序在函数返回前被执行。常用于保证一些资源最终一定能够得到回收和释放一、defer后面必须是函数或方法的调用,不能是语句.

2020-07-09 10:25:46 367

原创 GoFrame——请求校验Parse()方法返回err之坑

GoFrame请求校验Parse方法返回err之坑代码示例错误分析坑解决办法学了一部分GoFrame的使用,自己尝试去写项目练习,但是有个知识点搞混了,导致程序异常。Debug时,发现请求参数是有的,而且也能将参数转换为结构体,但是总是得不到预期结果。首先去排查err值,但是竟然是个空字符串,就让人摸不着头绪,不知道错误在哪,以下是场景复现。代码示例错误代码,标签和消息中间的正确分隔符不是|,而是#。:// LoginRequest 登录参数type LoginRequest struct {

2020-07-08 00:56:57 1437

原创 特殊的Header头——X-Forwarded-For 与 X-Real-IP 学习

特殊的Header头X-Forwarded-ForX-Real-IP其他 header 头End-to-end 和 Hop-by-hopEnd-to-end 端到端头部Hop-by-hop 逐跳首部X-Forwarded-For存储客户端 ip 和反向 dai li IP 列表,以逗号+空格分隔记录最后直连实际服务器之前的整个 dai li 过程可能会被伪造 ip,但是直连实际服务器这段不会被伪造图示:可以看到,可以看到,第一层 dai li ,其存储了客户端的 IP,第二层 dai li

2020-07-05 19:06:30 13040

原创 Golang——ReverseProxy源码分析

Go ReverseProxy源码分析功能点:源码分析核心结构体核心方法由于发文章时涉及到一些 m g 词汇,所以反复删除了原有的一些理解,这才能发表成功。其中,一些词也纯拼音表示了,比如 dai liReverseProxy 位于 net.http.httputil 包下(只保留了这句 55555…)功能点:支持自定义修改响应内容支持连接池支持错误信息自定义处理支持 websocket 服务支持自定义负载均衡支持 https dai li支持 url 重写源码分析声明:go.

2020-07-05 18:50:24 1495

原创 VScode 自定义快捷键

VScode 自定义快捷键一、界面操作配置快捷键1.打开快捷键设置2.输入关键词,快速定位3.修改快捷键4.更改 when 表达式二、修改快捷键配置文件一、界面操作配置快捷键以配置终端相关的快捷键为例:1.打开快捷键设置2.输入关键词,快速定位我们要修改终端,可以输入terminal,或者输入更多内容也行3.修改快捷键双击要修改的选项或者右键选择更改键绑定然后按相应的键,就会自动匹配到弹出的输入框里。(这个操作不方便截图,就不上图了)4.更改 when 表达式这个表达式其实就是快捷

2020-07-04 18:14:49 11917

原创 VScode Go语言代码片段快速生成汇总

Go语言代码片段快速生成汇总基本pkgmHTTP开发hfherrhandhelloweb本文结构:不同使用习惯或开发模块通过父标题分类。子标题对应一个VScode Go代码提示关键词,内容为具体生成的代码片段。使用前置知识:生成的代码会默认光标有多个光标时,自定义完当前光标内容后,按tab会自动跳转到下一个光标分享VScode的使用,掌握这些帮助你提高开发效率,不定期更新…自定义代码段教程基本pkgmpackage mainfunc main() {}HTTP开发

2020-07-04 17:10:54 2452 1

原创 雨课堂提交作业步骤 10步帮你弄好

12345678910在弹出来对话框,点击确认即可

2020-07-03 13:46:58 23092

原创 Deepin 安装Postman

在Deepin中安装Postman并在启动器中添加Postman软件图标一、安装Postman1.去官网下载Linux软件包:2.解压安装二、在deepin启动器中添加Postman软件图标一、安装Postman1.去官网下载Linux软件包:Postman官网2.解压安装sudo tar -xzvf Postman-linux-x64-7.11.0.tar.gz3.建立软连接sudo ln -s /opt/soft/Postman /usr/bin/二、在deepin启动器中添加Post

2020-07-03 11:40:58 1420

原创 Wndows下使用git拉取github上的项目(ssh方式)

ssh方式拉取github上的项目1.生成秘钥2.查看秘钥3.对应项目增加公钥4.验证5.本地拉取项目SSH方式拉取代码的好处就是push代码时不用每次都输入账号和密码进行验证,但必须是个人的项目。如果是clone别人的项目,只能通过 http方式了1.生成秘钥首先输入ssh-keygen,这里会提示你输入私钥保存的位置,直接回车使用默认位置即可后面会两次提示输入密码 直接回车,会生成两个文件id_rsa和id_rsa.pub分别是私钥和公钥2.查看秘钥此时打开个人用户下的ssh文件夹,比如

2020-07-03 11:08:50 421

原创 Github 删除提交的敏感记录

Github 删除提交的敏感记录1.先找到commit id2. 强制切换到 commit_id 这个记录3. 强制提交到远程1.先找到commit id查看近三次提交id 或者直接去中央仓库找到想要删除记录的上一个id(只要不是删除记录id就可以)git log -3 )2. 强制切换到 commit_id 这个记录 git reset --hard commit_id3. 强制提交到远程git push origin HEAD --force这样就把之前提交的错误记录给“顶”掉了

2020-07-03 11:01:49 412

原创 Vue+element 级联选择器 编辑操作内容回显

elementUI的 cascader 级联选择控件的默认值(回显)问题场景一:后端返回的是字符串,但是其格式是数组类型后端返回结果如:’[1,2,4,5]’修改方法:法一:(比较麻烦,但是几乎是万能的,所有的都可以转换成数组)因为数组是string类型的即 “[1,24,5]”将”[” 和 “]” ,substring将得到的字符串split(“,”),得到一个装有“1”,“24”,“5”的string数组循环拿出数组的每个元素转换成int类型,再push到option数组里,

2020-07-02 22:09:40 4103 4

原创 Vue项目优化

vue项目开发完后,进行一些必要的优化1.通过nprogress给页面增加进度条效果nprogress官方文档1.安装依赖npm install --save nprogress2.导入js及cssimport NProgress from 'nprogress'import 'nprogress/nprogress.css'3.使用在axios拦截器中添加如下方法发起请求前调用 start()服务器相应后调用 done()// request拦截器service.

2020-07-02 21:58:09 290

原创 Vue性能优化方法

优化策略1.生成打包报告打包时,为了直观地发现项目中存在的问题,可以在打包时生成报告。生成报告的方式有两种:1.通过命令行参数的形式生成报告/通过vue-c1i的命令选项可以生成打包报告,--report选项可以生成 report.html以帮助分析包内容vue-cli-service build --report2.通过可视化的U面板直接查看报告(推荐)在可视化的U面板中,通过控制台和分析面板,可以方便地看到项目中所存在的问题。使用vue ui启动可视化环境,build项目就能生产打包报

2020-07-02 21:54:53 1703

原创 Vue+element tabs标签页切换提醒/切换渲染页面

基本tab html ,主要看第三行,第四行<el-tabs v-model="activeIndex" tab-position="left" :before-leave="beforeTagsLeave" @tab-click="tabsClicked"><el-tab-pane label="基本信息" name="0"></el-tab-pane><el-tab-pane labe

2020-07-02 21:51:45 3390

原创 Deepin 中使用VS code 提示无法在这个大型工作区中监视文件更改

以下内容Deepin操作系统下的操作当看到此通知时,表明VS Code文件监视程序用完了句柄,因为工作区很大并且包含许多文件。1.可以通过运行以下命令查看当前限制:cat /proc/sys/fs/inotify/max_user_watches2.可以通过编辑/etc/sysctl.conf并将此行添加到文件末尾来将限制增加到最大:sudo deepin-editor /etc/sysctl.conf加入以下内容:fs.inotify.max_user_watches=524288d

2020-07-02 21:38:47 1141

原创 VS code Go语言开发 出现expected ‘;‘, found ‘package‘syntax

expected ';', found 'package'syntax这种错误是VS code 自身的BUG,好久了,一直没有解决解决办法:因为VScode 目前没有修复,所以直接重新加载 vscode,然后就正常了

2020-07-02 21:34:52 7567 5

原创 VS code自定义代码片段

Go代码片段比如在下面代码,在输入pln时智能提示:fmt.Println() 1.按Ctrl/Command+Shift+P,输入snippets,选择并单击该命令2.然后在弹出的窗口点击选择go选项:3.然后弹出页面中编辑内容:{ "println":{ "prefix": "pln", "body":"fmt.Println($0)", "description": "println" }, "printf":{ "prefix": "plf", "body"

2020-07-02 21:31:48 864 1

原创 好用的VS code插件记录

配置同步code settings sync适用于Gitee,即码云。推荐这个的原因是gist.com一直无法访问成功,即使配置了hosts也不行,后来就改用这个了。功能很简单:上传(更新)配置 upload setting下载配置 download setting第一次使用可能会延迟,不会在终端输出上传日志,但是自己可以去码云看下是否成功上传,打开码云,然后:个人主页 -> 左侧代码片段配置教程Settings Sync适用于GitHub,与前者配置方式大同小异但是

2020-07-02 21:20:00 1101

原创 网络代理和网络转发的区别

什么是网络代理用户通过代理请求信息请求通过网络代理完成转发到达目标服务器目标服务器相应后再通过网络代理回传给用户什么是网络转发简单的理解就是,客户端访问公网服务器,数据包在网络上传输时会经过至少一个路由器,对于多个/多层路由,会进行网络转发,让客户端能够访问公网服务器并返回结果。网络传输中是通过IP来确定服务器(主机)的,通过端口来确定应用(或者说进程),比如微信应用发消息,会有端口号来唯一标识该应用进程。网络代理与网络转发区别网络转发:是路由器对报文的转发操作,中间可能对数据包修改。

2020-07-02 20:36:06 6686

原创 字节序——Big Endian和Little Endian

一、Endian 的起源在各种计算机体系结构中,对于字节、字等的存储机制有所不同,因而引发了计算机通信领域中一个很重要的问题,即通信双方交流的信息单元(比特、字节、字、双字等等)应该以什么样的顺序进行传送。如果不达成一致的规则,通信双方将无法进行正确的编/译码从而导致通信失败。1980 年,Danny Cohen 在其著名的论文”On Holy Wars and a Plea for Peace”中为了平息一场关于在消息中字节该以什么样的顺序进行传送的争论而引用了该词。该文中,Cohen 非常形象贴切地

2020-07-02 20:26:08 2969

原创 解开粘包拆包谜团

什么是粘包和拆包?1.先理解 MTU 和 MSSMTU:全称 Maximum transmission unit 最大传输单元,由硬件规定;一个网络包的最大长度,以太网中一般为 1500 字节;MSS:全称 Maximum Segment Size 最大分段大小,除去 IP 和 TCP 头部之后,一个网络包所能容纳的 TCP 数据的最大长度;一般为 1460 字节。TCP 在建立连接的时候通常要协商双方的 MSS 值MSS 计算公式:MTU - IP Header(20byte) - T

2020-07-02 20:24:13 362

空空如也

空空如也

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

TA关注的人

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