-
什么是PoW(工作量证明)
2024-11-23
工作量证明是一种共识算法,通过计算难度验证操作有效性。本文详解PoW原理、SHA和SCRYPT算法特点、算法组合方式,以及在加密货币和防暴力破解中的实际应用。
-
什么是浏览器指纹
2024-10-05
浏览器指纹是一种通过收集设备和浏览器特征来识别用户的技术,广泛用于广告跟踪、安全防护和防欺诈。本文详细介绍了浏览器指纹的原理、常见采集方法及如何通过插件或专用浏览器修改指纹以保护隐私。
-
蓝牙打印入门
2022-08-31
本文详细介绍了蓝牙打印技术,包括传统蓝牙与低功耗蓝牙的区别、连接打印机的步骤、数据传输方式以及实际应用中的注意事项。附带完整微信小程序实现蓝牙打印的示例代码。
-
使用 iPv6 配置群晖 DDNS
2022-03-31
本文详细介绍了如何通过IPv6获取公网IP地址,包括中国移动光猫超级管理员登录方法、光猫桥接模式设置、路由器配置以及群晖DDNS设置,解决了没有公网IPv4的问题。
-
云打印原理入门
2022-01-31
本文介绍了打印技术的演变历程,从传统的本地打印到局域网打印、共享打印、云打印盒子,最终发展到云打印机。详细阐述了各种打印方案的工作原理、优缺点及应用场景,展示了网络技术如何使打印变得更加便捷高效。
-
网络打印协议入门
2021-11-29
本文详细介绍了网络打印的三个关键步骤:打印内容转为指令、网络上寻找打印机以及传输打印指令。重点解析了常见的网络打印协议,特别是AppSocket协议的工作原理及应用场景。
-
Electron打印的四种方案
2021-08-19
本文详细介绍了Electron应用中实现打印功能的四种方案。分析各方案的优缺点,并针对不同场景提供了代码示例和实践经验。
-
前端面试题 & 面试官心得
2021-04-26
本文分享了前端技术面试的经验和方法,包括网络原理、JavaScript、框架、CSS和安全等方面的考核要点,以及如何全面评估候选人的技术实力和软实力。
-
JavaScript基础:原型链与继承
2021-03-04
本文详细介绍了JavaScript原型链的工作原理,包括显式原型、隐式原型和构造函数的关系。同时对比分析了四种创建对象和六种实现继承的方法。
-
微信小程序代开发入坑指南
2021-01-24
本文详细介绍了微信小程序代开发第三方平台的完整流程,包括平台注册、授权机制、接口对接、小程序开发与发布等详细步骤。
-
防盗链原理和实践
2020-10-23
本文介绍了网站图片防盗链的原理、实现方法和绕过技巧。详细讲解了如何通过Nginx配置防盗链,分析了防盗链可能被绕过的方式,并提供了更严格的防护措施建议,帮助网站保护原创图片资源。
-
DNS原理入门
2020-09-01
本文详细介绍了DNS域名系统的基本概念、工作原理和重要性。包括域名结构、DNS记录类型、域名解析过程、TCP/UDP使用原因、DNS劫持及防范措施等内容。
-
CSP使用指南
2020-07-21
内容安全策略(CSP)是防范XSS攻击的有效方法,通过设置资源白名单限制浏览器加载执行未授权脚本。本文详细介绍CSP的配置方式、指令规则及违例报告机制,帮助网站提升安全防护能力。
-
XSS攻击的原理及防范
2020-06-13
本文详细介绍了跨站脚本攻击(XSS)的原理、攻击方式(储存型、反射型、DOM型)以及防范措施,包括内容过滤、HTML转义、CSP策略等多种安全防护手段,帮助开发者构建更安全的Web应用。
-
CSSStyleSheet:使用JS操作CSS
2020-04-07
本文介绍了 CSSStyleSheet 接口的基本用法,包括如何查看、禁用样式表以及通过 cssRules 对象精细操作 CSS 规则。虽然实际应用场景有限,但在特定情况下直接操作 CSS 样式表能提供独特优势。
-
网站提速:Http2 & server push 实践
2020-02-28
本文详细介绍了HTTP/2协议的核心特性,包括二进制分帧、头部压缩、多路复用和服务端推送。同时分享了HTTP/2的实际配置方法,特别是Server Push的两种实现方式,以及基于HTTP/2特性的网站优化建议。
-
微信小程序性能优化实践
2020-01-08
本文总结了微信小程序性能优化的经验,包括减小代码包体积、控制setData数据量、使用骨架屏和懒加载等技术,以及WXS响应滑动事件的优化方案,适用于提升小程序加载速度和运行流畅度。
-
使用PublicKey免密登录Linux服务器
2019-12-11
本文详细介绍了SSH密钥登录的原理和实践步骤。通过非对称加密技术,无需密码即可安全登录服务器,避免中间人攻击。
-
基于位运算的权限管理
2019-10-27
本文详细介绍了位运算在权限管理中的应用原理,包括使用与运算校验权限、或运算添加权限和非运算去除权限的具体实现方法,以及位运算权限控制的优缺点。
-
详解BigInt
2019-09-20
本文介绍了JavaScript中BigInt数据类型的用途、特性及使用方法。BigInt解决了JavaScript中Number类型无法精确表示超过安全整数范围的大数问题,支持直接进行算术运算,是处理大整数计算的理想选择。
-
HSTS原理及实践
2019-08-08
本文介绍了SSL剥离攻击的原理及防御方法,详细解释了HSTS(HTTP严格传输安全)机制如何通过强制使用HTTPS连接来防止中间人攻击,保障网站安全,并提供了HSTS的配置方法和最佳实践。
-
Yii2 webuploader(Yii2大文件分片上传扩展)
2019-06-30
Yii2大文件分片上传扩展
-
详解Http缓存机制
2019-05-26
本文详细介绍了HTTP缓存机制,包括强制缓存(Expires、Cache-Control)和协商缓存(Last-Modified、ETag)的工作原理,以及如何合理配置缓存策略来优化网站加载速度和用户体验。
-
Cors最佳实践
2019-04-21
本文详细介绍了CORS(跨域资源共享)的基本概念、工作原理和优势。文章解析了简单请求与非简单请求的处理流程,并提供了Nginx、Node.js和PHP等多种环境下的实现方案。
-
Linux 用户&权限 学习笔记
2019-03-13
本文详细介绍了Linux系统中的用户权限管理基础知识,包括组、用户和权限的概念及操作方法。以及如何创建、修改和删除用户组与用户、如何设置和修改文件权限的指令。
-
Http请求常用Content-Type使用指南
2018-12-21
本文介绍了HTTP请求中常见的Content-Type类型,包括application/x-www-form-urlencoded、multipart/form-data、application/json和text/plain等,并详细说明了它们的使用场景、数据格式及前后端处理方法。
-
电子邮件基础:利用SMTP协议伪造发件人
2018-11-12
本文介绍SMTP协议如何发送邮件,以及利用协议漏洞“伪造发件人”的方法。收到奇怪的电子邮件的时候请务必当心。
-
DocumentFragment(文档片段)简介&性能测试
2018-10-08
DocumentFragment是一种DOM操作技术,可暂存多个节点并一次性插入DOM树,减少页面渲染时间和回流次数。本文介绍其基本原理、使用方法、性能优势及适用场景,并提供IE9兼容性解决方案。
-
Json Web Token(JWT)简介
2018-09-14
本文详细介绍了JSON Web Token (JWT)的基本原理、结构组成和使用场景。JWT通过签名机制实现无状态认证,由Header、Payload和Signature三部分组成,适合多服务器间信息交换。
-
什么是Token?
2018-08-31
本文详细介绍了Token的概念、生成方式和应用场景,重点阐述了基于Token的用户认证方案,包括Access Token的工作流程、有效期管理以及与Cookie的关系,为开发者提供了实用的身份验证解决方案。
-
Promise A+规范简单实践
2018-08-20
本文介绍了JavaScript中的Promise概念,包括其规范定义、状态转换机制以及基本实现方法。文章通过一个简单的Promise库实现示例,展示了Promise如何优雅地处理异步编程需求,使链式回调代码更加清晰。
-
垫刀与玄学:游戏中伪随机算法的原理
2018-07-30
本文介绍PRD伪随机算法在游戏设计中的应用,解释其如何改善游戏体验,降低极端事件(如连续暴击或长时间不暴击)的概率,并探讨了在暴击计算、装备强化和抽卡系统中的实际应用。
-
位图字体的原理及应用
2018-07-16
本文介绍位图字体的基本原理和应用场景。位图字体使用图片渲染字符,常用于游戏开发中实现复杂字体样式。附有制作位图字体的完整教程。
-
React实现自适应高度的<textarea>
2018-06-25
本文探讨了实现自适应高度文本域的三种方法:JS实时修改高度、使用contentEditable属性和隐藏DIV撑开父容器。文章详细分析了各方法的优缺点,并展示了在React中使用隐藏DIV方法的具体实现方式。
-
自动化持续集成:Gitlab-CI实践
2018-06-14
本文详细介绍了Gitlab-CI持续集成的原理、环境配置和实施步骤。通过自动化集成流程,可以实现代码合并、编译、测试和部署的自动化。
-
使用Gitlab搭建私有Git仓库
2018-06-13
本文详细介绍了如何在CentOS 7.4上搭建私有GitLab仓库,包括环境准备、安装步骤和常用命令,帮助团队实现代码安全管理和自动化集成。
-
Base64编码原理及应用
2018-06-11
Base64是一种用可见字符传输二进制数据的编码方式。本文介绍Base64编码的原理,以及在web中的应用。
-
全面了解 Http Cookie
2018-06-06
本文全面介绍Cookie的工作原理、关键属性、使用方法及安全注意事项。从Set-Cookie机制到防范XSS和CSRF攻击,帮助开发者正确使用这一重要的Web技术。
-
HTML5 <datalist> 简介及兼容方案
2018-05-17
<datalist>是HTML5引入的新元素,用于输入提示。本文介绍<datalist>的语法、交互逻辑,并分别给出基于Vue和React的兼容方案。
-
自定义字体@font-face的常见应用
2018-04-26
本文详细介绍了@font-face的多种应用场景,包括自定义网页字体、图标字体制作、反爬虫技术以及特殊文字显示效果,并提供了实用示例和技术实现方法。
-
浅谈前端字体子集化
2018-04-17
本文详细介绍了字体子集化的原理和实现方案,帮助前端开发者解决中文字体文件过大的问题,提高网页加载速度,同时保持良好的设计效果和用户体验。
-
CentOS升级Linux内核备忘录
2018-03-31
CentOS升级Linux内核全流程详解
-
详解TCP/IP协议族中的Checksum(头部校验和)
2018-02-28
本文详细介绍了Checksum校验和算法的原理、计算过程和特性,并提供了C、PHP、Node.js三种语言的实现代码,适用于网络协议数据校验,特别是TCP/IP协议族中的应用。
-
钻牛角尖:<b> 和 <strong> 有什么区别?
2018-02-09
探讨HTML中<b> 与<strong> 标签的定义差异、语义化意义、SEO影响及无障碍应用。
-
TCP粘包/拆包 の 原理、解包方案和测试用例
2018-02-01
详细介绍TCP粘包和拆包问题的原理及解决方案,使用Node.js实现了基于消息头长度的TCP解包方法,并提供了完整的代码示例和测试用例。
-
前端构建工具Parcel 了解一下
2018-01-15
前端构建工具parcel初体验
-
Service Worker实践:缓存股票信息
2017-10-23
使用Service Worker实现前端缓存的典型案例,优化股票数据请求。
-
WebAssembly性能实测
2017-09-05
通过三个数学计算案例(斐波那契数列、自然常数e和圆周率π)对比测试了WebAssembly与JavaScript的性能差异。
-
电子场记牌 for iPad
2017-08-14
电子场记牌
-
【翻译】composer-asset-plugin中文文档
2017-07-28
composer-asset-plugin中文文档
-
Yii2 Sortable GridView(Yii2列表拖动排序扩展)
2017-07-14
Yii2列表拖动排序扩展
-
CSS translate 字体闪烁问题
2017-06-29
CSS translate导致字体渲染闪烁问题及解决方案
-
CSS垂直居中的若干冷门方案
2017-05-22
三种特殊的CSS垂直居中技巧。
-
前端资源缓存与版本号更新
2017-05-07
前端资源缓存更新策略:覆盖式与非覆盖式发布的优缺点及最佳实践。
-
gulp-asset-version (gulp插件:添加前端资源版本号)
2017-04-26
gulp-asset-version插件
-
Yii2 scroll-to-top-widget (Yii2回到顶部插件)
2017-04-15
Yii2回到顶部插件
-
iOS (WKWebview内核)fixed定位问题
2017-04-05
修复一个 iOS WKWebview fixed定位问题
-
RIngBlog——基于Yii2的开源博客系统
2017-04-01
ringBlog是一个基于Yii2的博客系统,提供最基础的的分类和博客功能。