DingMing

丁大铭的个人空间,用来分享一些前端小技巧,默默成长吧,哈哈

Node自动接收新邮件进行处理

    简介: 通过imap 来接收邮箱新邮件,类似客户端系列,不过比较简单的,目前只有新邮件,后续也可以通过这个来做一个自己的邮件客户端。

1.介绍 邮件协议

  1. POP3:Post Office Protocol 3,即邮局协议的第三个版本,是应用最广泛的邮件接收协议。POP3 是一种单向的邮件传输协议,它只能将服务器上的邮件传输到本地计算机上,而不能将本地计算机上的邮件传输到服务器上。POP3 协议的默认端口号是 110。
  2. IMAP:Internet Mail Access Protocol,即互联网邮件访问协议,是一种高级的邮件协议。IMAP 与 POP3 不同,它是一种双向的邮件传输协议,它不仅可以将服务器上的邮件传输到本地计算机上,还可以将本地计算机上的邮件传输到服务器上。IMAP 协议的默认端口号是 143。
  3. SMTP:Simple Mail Transfer Protocol,即简单邮件传输协议,是一种用于发送邮件的协议。SMTP 协议的默认端口号是 25。

2.需求

在指定邮箱接收到新邮件后,进行邮件处理,比如 获取邮件内容,并跳转指定链接 进行 Selenium 自动化操作。

Read More

自动化脚本之Selenium

背景

最近失业在家,经表哥介绍,日本一些刷单的活动,可以赚点零花钱,所以开始研究一下前端自动化的一些脚本。一下是我的一些总结

1.什么是 Selenium Webdriver

Selenium WebDriver 是一组开源 API,用于自动测试 Web 应用程序。虽然 Selenium 本身在其工具套件中有许多迭代,但 WebDriver 是 Web 自动化框架,它允许用户针对各种不同的浏览器执行测试,而不仅仅是在 Firefox 或 Chrome 上进行测试。

相对与 Puppeteer,Selenium 是一个更加通用的工具,可以用于多种浏览器,而 Puppeteer 只能用于 Chrome 浏览器。

WebDriver 以本地化方式驱动浏览器,就像用户在本地或使用 Selenium 服务器的远程机器上所做的那样,这标志着浏览器自动化的飞跃。

Selenium WebDriver 指的是语言绑定和各个浏览器控制代码的实现。 这通常被称为 WebDriver。

Read More

2023年年终总结

序言

2023 年是比较魔幻神奇的一年,整体大事件如下:

  • 北漂结束返回老家工作
  • 将我们的婚房购入了家电( 比北京的蜗居舒服太多了 )
  • 买了一辆属于自己的车
  • 最大的好消息是我们迎来了我们的小宝宝
  • 感受到了来自三四线城市工作状态( 阶级下游很难混 )
  • 工作多年,一次经历了裁员,让我深刻认识到了 –> 关系才是硬道理

不回忆这些总结,居然没发现,我今年竟然做了这么多大事件

Read More

初始负载均衡

一、一些学习记录

1.Nginx 与 LVS

  • Nginx 做负载均衡,在第七层应用层,面向的事 HTTP 流量,对 HTTP 流量进行负载均衡
  • LVS 做负载均衡,在第四层传输层,面向的是 TCP/UDP 流量,对 TCP/UDP 流量进行负载均衡,效率非常高。但是他无法做到基于 HTTP 的分流,只能基于 IP 地址进行分流。

2.DNS

  • DNS 服务器是一个域名解析服务器,它的作用是将域名解析成 IP 地址,这样客户端就可以通过 IP 地址访问到服务器了。

3.网关

  • 不管是什么端,HTTP 请求(API)都会经过一个网关。网关支持高并发流量,负责第一层流量的保护,我们可以做 身份认真,安全,监控,日志,流量控制等策略。

二、Node.js 应用负载均衡的两个概念:服务负载均衡 与 RPC 负载均衡

Read More

VSCode免密登录服务器

1 前言

在使用 vscode 的时候,我们经常会使用到 ssh 连接服务器,但是每次都要输入密码,很是麻烦,那么我们可以通过配置 ssh 免密登录服务器,这样就可以省去每次输入密码的麻烦了。

使用 vscode 登录服务器可以无需再打开多余的工具,直接在 vscode 中进行操作,非常方便。

使用 vscode 连接服务器,需要安装插件:Remote-SSH,放心使用,这个插件是微软官方出品的,不会有安全问题。

下面也会介绍 服务器之间的免密登录,这样就可以在服务器之间进行文件的拷贝了。

Read More

Github Copilot 使用体验

GitHub Copilot 到底是什么?

GitHub Copilot 是由 Github 和 OpenAI 创造的 AI 工具。该工具通过自动代码补全来帮助程序员们编写代码。Visual Studio Code、Neovim 和 JetBrains 的用户已经可以使用这个插件了。
GitHub Copilot 基于 OpenAI Codex 模型,经过自然语言和数十亿行公共源码的训练,其中来源包含 Github 上的项目。
该工具能为你编写代码或提供替代的解决方案。该服务支持所有的编程语言,但在 Python、JavaScript、TypeScript、Ruby、Java 和 Go 语言中表现得最为出色。

如何使用?

Github Copilot 现在仍在技术预览的状态下;这只对部分的测试者开放。要想加入等候名单,见  copilot.github.com
在使用 GitHub Copilot 之前,你首先得下载 Visual Studio Code 插件

  1. 在 Visual Studio Code Marketplace(或 JetBrains Marketplace)里浏览 GitHub Copilot 插件页面并下载该插件;
  2. 打开 Visual Studio Code,你会被提示登录 GitHub 并授权该插件;
  3. 授权插件之后,Github 会带你返回到 Visual Studio Code。
    安装完成后,创建一个新的文件,你就可以开始编写你的代码了。

举例:

  1. 创建一个新的 JavaScript 文件(.js);
  2. 声明函数,等待魔法的发生。 就这么简单。如果你不喜欢建议的代码,你也可以使用快捷键切换选项。

    Read More

智能预加载策略

基于用户行为预测的前端智能预加载

目标:结合大数据统计和分析,做到准确预判用户访问路径,提前加载相关业务资源,有效降低网络时间,通过对预加载判断算法的升级和优化,做到成本,性能,体验的平衡和收益最大化,持续提升客户使用2.0系统的整体体验。

背景信息和理论基础

  1. 2.0 是一系列单页面应用的集合,目前有100余个独立应用
  2. 用户使用A应用,大概率会访问B应用,如 o2o 和 kng ,这种规模和关系既是需求也是条件
  3. SAAS产线采用 cdn部署/文件指纹/强缓存的组合,单个业务一次加载,缓存失效之前可以一直使用
  4. 智能预加载在原生客户端开发,浏览器优化,视频播放等领域已有较多实践应用

关于本议题,早在2015年谷歌上已有相关论文(见扩展阅读7)。但其关注的是浏览器本身的体验优化,且彼时web开发模式还传统的前后端不分离,链接也是href。如今经过前后端分离的大变革,js全面接管结构,表现,行为三大领域,href也大多变为了click和function,检测关键href已然失效,但“预测用户行为”的核心思想还是通用的。

Read More

GMTC 2023 参会感想

ps:感谢公司给我们提供了这次宝贵的机会,能让我们参加GMTC大会。

刚刚在北京落下帷幕的 GMTC 2023 应该算是近期国内前端圈子里最高规格的活动之一了。
那么这两天的分享有什么值得一提的地方呢?下面是一份小小的总结。

Read More

Mac使用AccessClient堡垒机跳转闪退问题解决方案

登录公司服务器需要使用堡垒机,但是mac使用AccessClient会出现或多或少的问题,经过我一下午的研究,发现并解决了一些列问题。在此分享给大家,也记录一下:

1.最基础的AccessClient配置

AccessClient启动需要设置目录权限,这里简单暴力可以直接设置 权限 777

1
chmod 777 /Applications/AccessClient.app

2.启动默认执行python3

Read More

2023年规划

序言

没有2022年的年度总结,我写这篇文章的主要目的就是来炫耀,和安排下今年的目标和未来的三五年规划。
因为我提前完成了我的三年目标和五年规划! 还有我30岁的小目标也已经完成了!!!

下图是我2020年指定的计划,现在也完成了大半啦,哈哈~~~

Read More