#
[精品] [置顶] VSCode插件开发全攻略(一)概览

文章索引 VSCode插件开发全攻略(一)概览VSCode插件开发全攻略(二)HelloWordVSCode插件开发全攻略(三)package.json详解VSCode插件开发全攻略(四)命令、菜单、快捷键VSCode插件开发全攻略(五)跳转到定义、自动补全、悬停提示VSCode插件开发全攻略(六)开发调试技巧VSCode插件开发全攻略(七)WebViewVSCode插件开发全攻略(八)代码片段... 阅读全文

@2018-09-03 前端综合 浏览(78227)
#
[精品] [置顶] HTTPS从认识到线上实战全记录

前言关于HTTPS,基本上你想知道的都在这里了。本文原标题《HTTPS原理与实践》,下图是本文配套PPT的目录截图: 前言原理篇认识HTTPS什么是HTTPSSSL/TLSHTTPS的优点HTTPS的缺点HTTPS原理小明和小红的故事单向认证回到小明和小红的故事双向认证引申思考如何保证公钥不被篡改为何正式传输时使用对称加密CA何为CACA如果作恶怎么办顶级证书私钥泄露怎么办SSL证书证书的种... 阅读全文

@2017-12-19 前端综合 浏览(12712)
#
[精品] [置顶] 【干货】Chrome插件(扩展)开发全攻略

写在前面我花了将近一个多月的时间断断续续写下这篇博文,并精心写下完整demo,所以转载务必保留出处。本文所有涉及到的大部分代码均在这个demo里面:https://github.com/sxei/chrome-plugin-demo ,大家可以直接下载下来运行。 另外,本文图片较多,请耐心等待加载完毕。 本文目录: demo部分截图: 鉴于有很多网友有交流学习Chrome插件的诉求... 阅读全文

@2016-12-19 前端综合 浏览(167042)
#
纯CSS修改adm表单星号位置

背景已知ADM的表单星号位置是绝对定位展示在label前面的: 而业务设计稿要求*和表单内容对齐: 如果*写在label的前面则去掉absolute定位即可,但是偏偏写在后面。 解法此时有一个非常巧妙的方法: 实现,去掉absolute: 然后给<label>添加2个样式即可: 原理: 因为星号*是一个非阿拉伯语或希伯来语等从右到左书写方向的语言的字符,浏... 阅读全文

@2024-06-26 暂未分类 浏览(128)
#
详谈DNS解析过程

举个例子,浏览器敲下 https://haoji.me 之后是怎么找到你服务器的IP的? 浏览器缓存:有则停止,没有继续往下。操作系统缓存:有则停止,没有继续往下。本地 DNS 服务器:通常由网络提供商配置,这一层有缓存则停止,没有继续往下。根服务器:请求发送至最近的根服务器,并根据域名后缀重定向到指定域名的顶级域名(TLD)服务器,例如.com顶级域名服务器、.me顶级域名服务器等(全球共... 阅读全文

@2024-06-21 暂未分类 浏览(147)
#
汉字转svg

text-to-svghttps://github.com/shrhdk/text-to-svg 支持导入任意字体,并将字体中的文字转为svg,没有字体文件的可以先临时用这个:https://www.alibabafonts.com/#/font <!DOCTYPE html><html lang="en"><head> <title>页... 阅读全文

@2024-06-12 暂未分类 浏览(274)
#
判断网页是否在微信中打开的一个坑

仅仅是通过判断userAgent中是否存在weixin或者wechat还不够,今天突然发现ios的微信这2个都没有,正确的判断方法是判断是否有MicroMessenger,为了稳妥起见3个都一起判断: /** * 获取当前APP名称 */getCurrentAppName() { const ua = navigator.userAgent.toLowerCase(); if (ua... 阅读全文

@2024-05-20 移动端 浏览(223)
#
nunjucks语法简单总结

简洁nunjucks(下称nj)是mozilla推出的一款模板语言,因语法与我们熟悉的JS、C#等语法差异较大,使用成本较高。说实话,个人觉得这语法挺反人类的,不知道egg为啥要选它作为默认模板语言…… 官网:https://mozilla.github.io/nunjucks/cn/getting-started.html 常见用法 基本语法:{{表达式}};注释:{# 这是注释 #} ... 阅读全文

@2024-05-17 暂未分类 浏览(232)
#
LightProxy/whistle 使用总结

简介LightProxy是阿里巴巴开源的一个跨平台网络代理工具,底层基于whistle,虽然已不再维护,但是目前为止还没有找到更好用的替代品,基于已经习惯以及暂且够用的原因,目前本人还在重度使用中。 本质上lightproxy只是基于whistle做了一层皮,但是做了一些小的优化,且图形化的软件肯定比控制台使用起来方便一些,所以本人更喜欢用lightproxy。 whistle文档:htt... 阅读全文

@2024-05-17 暂未分类 浏览(378)
#
为iframe正名,你可能并不需要微前端

导语:任何新技术、新产品都是有一定适用场景的,它可能在当下很流行,但它不一定在任何时候都是最优解。 前言最近几年微前端很火,火到有时候项目里面用到了iframe还要偷偷摸摸地藏起来生怕被别人知道了,因为担心被人质疑:你为什么不用微前端方案?直到最近笔者接手一个项目,需要将现有的一个系统整体嵌入到另外一个系统(一共20多个页面),在被微前端坑了几次之后,回过头发现,iframe真香! q... 阅读全文

@2024-05-15 暂未分类 浏览(253)
#
mockjs-fetch:加2行代码让你的mock.js支持fetch

背景不知何种原因,mock.js只支持拦截XMLHttpRequest,不支持fetch,其实要支持也非常简单。npm上也有几个老外写的有关mock-fetch的仓库,但是鉴于自己已经习惯了mock.js的语法,所以还是决定写一个非常轻量的辅助包来让mock.js支持fetch。 介绍安装npm i mockjs-fetch --save 使用只需加2行代码就可以让你的mock.js支持fet... 阅读全文

@2024-05-15 暂未分类 浏览(300)
#
如何实现一个通用ajax拦截器

前言在各类ajax框架基础之上实现拦截非常简单,比如jQuery的ajax就内置了ajaxStart事件,但是如何实现一个通用的、不借助任何框架的拦截器呢? 原生的ajax主要由XMLHttpRequest和fetch来实现的(过时的ActiveXObject先不考虑),要实现通用ajax的拦截,必须在这些原生方法上面下手脚。 本文所说的拦截器仅仅指的是插入自己的业务代码,并不能改变ajax的... 阅读全文

@2024-05-15 暂未分类 浏览(204)
#
浅析Egg路由的反向解析

什么叫反向解析这里所说的Egg路由反向解析指的是,根据浏览器上一个能访问的URL地址定位到Egg工程里面Controller或者API代码的位置,为了描述方便,本文把Controller或者API统一称为action。 乍一听起来感觉这个应该很容易啊,直接从router.js找到映射关系不就好了么,例如下面这样的: 如果大家都严格按照一些约定好的规范去写的话,这个确实很容易。比如说,如果按... 阅读全文

@2024-05-15 暂未分类 浏览(201)
#
私有化部署ChatGLM

下载代码下载运行代码: mkdir chatglm2cd chatglm2mkdir run_datacd run_datagit clone https://github.com/THUDM/ChatGLM2-6B.git然后下载十几个G的模型数据,由于文件太大,普通git无法直接下载,需要使用git-lfs克隆,首先安装git-lfs: brew install git-lfsgit lf... 阅读全文

@2024-05-13 暂未分类 浏览(214)
#
配置免密ssh登录服务器

水文一篇发现百度AI不是一般的垃圾,生成的内容很多都是从csdn抄过来的,内容乱七八糟一点都不精华。还是得自己写一篇。 准备工作首先检查本地电脑~/.ssh/下面有没有id_rsa和id_rsa.pub这2个文件,没有的话通过ssh-keygen生成一个。 登录服务器先密码登录你的服务器,然后vim ~/.ssh/authorized_keys,将前面id_rsa.pub文件的内容复制并粘贴到... 阅读全文

@2024-04-14 暂未分类 浏览(647)
#
[精品] 10分钟搞定支持通配符的永久有效免费HTTPS证书

前言之前一直用的是腾讯云免费SSL证书,但是只有1年有效期,而且不支持通配符证书(Wildcard Certificates,类似*.haoji.me),所以使用上非常不方便,甚至最近证书过期几个月了都懒得去更换。最近实在是被逼的没办法了,研究一下永久有效证书。 基本原理市面上的免费证书一般都只有3个月有效期,一般都是通过一些自动重新申请的脚本来实现“永久”有效。其中最出名的应该是Let's E... 阅读全文

@2024-04-07 前端综合 浏览(1883)
#
Centos8安装Let's Encrypt免费SSL证书傻瓜式教程

本文作废,推荐阅读另外写的一篇10分钟搞定支持通配符的永久有效免费HTTPS证书。 安装snapd添加EPEL简单理解EPEL是一个软件库的扩展,官方软件源有限,安装snapd一定要先添加EPEL。 sudo dnf install epel-releasesudo dnf upgrade # 这一步将比较耗时 通过yum安装snapd通过snap安装certbot通过certbot安装证书... 阅读全文

@2024-04-07 网站建设 浏览(475)
#
20行代码封装复制到剪贴板函数:copyToClipboard

一直非常不喜欢类似clipboardjs的使用方式(至于依赖flash的ZeroClipboard.js那就更不推荐了),和DOM耦合太重,使用起来非常不方便: <button class="btn" data-clipboard-text="Just because you can doesn't mean you should — clipboard.js"> Copy t... 阅读全文

@2024-02-29 JavaScript 浏览(722)
#
esModule内联代码的导入导出实现

背景浏览器层面的esModule在设计的时候不太完美,只能import外部JS,如果某个<script type="module">是通过内联代码直接写在HTML里面的反而没法导入: <script type="module">export default 123;</script><script type="module">// 无法导入上面的模... 阅读全文

@2024-01-23 JavaScript 浏览(815)
第1页,共15页