首页 文章 精选 留言 我的

精选列表

搜索[请求重写],共10000篇文章
优秀的个人博客,低调大师

[Android Pro] 利用tcpdump和wireshark对android网络请求进行分析

一: tcpdump操作流程 1. 手机要有root权限 2. 下载tcpdumphttp://www.strazzere.com/android/tcpdump 3.adb push c:\wherever_you_put{color}tcpdump/data/local/tcpdump 4.adb shell chmod 6755 /data/local/tcpdump 5, adb shell, su获得root权限 6, cd /data/local 7, ./tcpdump -i any -p -s 0 -w /sdcard/capture.pcap 命令参数: # "-i any": listen on any network interface # "-p": disable promiscuous mode (doesn't work anyway) # "-s 0": capture the entire packet # "-w": write packets to a file (rather than printing to stdout) ... do whatever you want to capture, then ^C to stop it ... 8, adb pull /sdcard/capture.pcap d:/ 9, 在电脑上用wireshark打开capture.pcap即可分析log 二:wireshark 的操作流程 1:双击上面的capture.pcap文件用wireshark打开 2:在filter 过滤器出输入:http,回车,就能将所有的http都过滤出来。 分类: Android Pro 本文转自demoblog博客园博客,原文链接http://www.cnblogs.com/0616--ataozhijia/p/4677673.html如需转载请自行联系原作者 demoblog

优秀的个人博客,低调大师

Wasp 用 TypeScript 重写全栈 spec 层,从自定义 DSL 到原生 TypeScript 的战略转身

全栈 Web 框架 Wasp 发布了其第 12 次 Launch Week 的重头戏——TypeScript Spec。这是一次对框架核心架构的根本性改造:Wasp 抛弃了自研的领域特定语言(DSL),转而用纯 TypeScript 来实现其最具特色的"spec"层。Wasp 联合创始人兼 CTO Martin Sosic 在博客中坦言,这个决定源于一个关键认知——"为 Web 开发发明新语言,问题比价值更多"。 先理解 Wasp 是什么。它是一个有自我特色(opinionated)、功能齐全(batteries-included)、真正的全栈 JS/TS Web 框架,精神上继承自 Ruby on Rails、Laravel、Django 这一脉络,但为现代 JavaScript 生态重新设计。"真正的全栈"意味着 Wasp 同时覆盖前端、后端和数据库,目标是端到端地捕获 Web 应用开发的全部环节。"Spec 驱动"则是 Wasp 最独特的核心理念——框架的名字本身就是"Web App SPecification"的首字母缩写。 Spec 是 Wasp 中一个独有的逻辑层。它不写前端、后端或数据库逻辑,而是写"全栈逻辑"。在这个层中,你用一套高级构建块(page、route、query、action、job、api 等)来定义你的应用是什么,然后把具体实现交给 React、Node.js、Prisma 等你已经熟悉的底层技术。Wasp 编译器读取 spec 和实现代码,将它们编织成一个完整的全栈应用。 到目前为止,这个 spec 层是用一套自研的 DSL 搭配自定义编译器和工具链来实现的。但 Sosic 在五月初就已经公开反思过——维护一门自己的语言意味着编辑器支持、错误提示、类型检查、社区上手成本全部要从头搭建。当框架试图扩展为更大的生态时,DSL 变成了瓶颈。 TypeScript Spec 的解决方案是:你不再写 .wasp 文件,而是写 *.wasp.ts 文件。你从 @wasp.sh/spec 包中导入 app、page、route、query、action、job 等构建函数,用 TypeScript 代码组合出一个完整的 app spec 对象,然后在 main.wasp.ts 中 export default 它。 从表面看,代码结构变化不大——你仍然在定义路由、页面、查询、认证方式。但本质区别在于,你写的不再是受限的 DSL 语法,而是完整的 TypeScript。你可以使用第三方 npm 库、可以将 spec 拆分到多个 TypeScript 文件中、可以定义自己的 helper 函数、可以用 for 循环动态生成 spec、可以从磁盘读取配置、可以检查环境变量——"甚至可以发射火箭",Sosic 半开玩笑地写道。 这种灵活性带来了诸多前所未有的可能性。文章中最精彩的示例是文件系统路由的实现:Wasp 默认使用显式路由定义(在 spec 中逐一声明),但如果你更偏好 Next.js 风格的文件路由,你可以在 main.wasp.ts 中写一个 helper 函数,用 Node.js 的 fs 模块扫描 src/ 目录结构,根据目录和文件自动生成 route() 和 page() 的 spec 数组,然后将其拼接到 app.spec 中。Sosic 称之为"把 Wasp 变成了一个元框架(meta-meta-framework)"。 Wasp 还引入了一个巧妙的编译时机制来解决 spec 和实现之间的连接问题:with { type: 'ref' } 导入。这类导入不会被真正执行,而是在打包阶段被转换为引用对象(ref({ import: 'getTasks', from: './src/tasks' })),传递给 spec 构造函数。这意味着你的 spec 可以引用实现代码,同时保持 spec 本身的独立性和可分析性。 为什么 Wasp 团队对 spec 如此执着?Sosic 的解释触及了 Web 框架的本质:所有 Web 框架,从定义上说,都在捕捉"Web 应用是什么"这个领域的本质,给它结构,引入概念,然后让你填补空白——这本质上就是在分离"规格说明"(想要什么)和"实现"(怎么实现)。Wasp 的不同之处在于,它将这种规格说明提升为"一等公民"。它不是基于惯例的(魔法文件名、目录结构)、不是隐式的、不绑定于底层技术栈的运行时。它是显式的、可编程的、可组合的、栈无关的、可扩展的。 这种设计对 AI 辅助编程有特殊的价值。在 spec 驱动的 AI 工程方法日益流行的当下(如 OpenSpec、GitHub Spec Kit 等工具),Wasp 的 spec 更进一步:你的 spec 是应用的真正可编译组成部分,而不是随时间漂移的 Markdown 文件。AI 可以先从 spec 中获取应用的高层鸟瞰图和设计意图,然后才深入实现细节。未来如果 Full Stack Modules(全栈模块)落地,开发者甚至可以给 AI 提供经过测试验证的全栈构建块,确保某些部分不会被 AI 意外搞砸。 Wasp 目前仍在 Beta 阶段,团队正在三条线上并行推进:进一步完善 TS Spec 设计(将数据模型纳入 spec、实现 spec 可扩展性)、推动核心模块(认证、任务队列、数据库、路由渲染等)向 1.0 成熟度演进、以及横向扩展(支持 Drizzle 等其他 ORM、Svelte/Vue 等前端库、甚至 Python/Go/Rust 等后端语言)。 这次架构变更折射出一个更广泛的趋势:在经过了十年的"去框架化"和"微库组合"思潮之后,全栈框架正在经历一次复兴。Wasp 的 TypeScript Spec 代表了这种复兴中的一个新方向——不是重新发明语言,而是用业界最主流的语言来承载框架的独特设计哲学。 参考来源: Wasp now lets you write your full-stack logic as a spec in TypeScript A new language for web dev was a mistake - Wasp Wasp Docs - Spec

优秀的个人博客,低调大师

反爬技术实战:从请求链路到行为模型的纵深防御

上一篇从爬虫视角讲了如何绕过防护,这篇换到防守方。2026 年的反爬已经不再是“封 IP + 弹验证码”的简单组合。Cloudflare 一家就保护着超过 2400 万个活跃站点,2025 年 7 月起在全网默认拦截 AI 爬虫。Wappalyzer 追踪的网络安全服务数量在 2022 到 2024 年间从 36 个翻倍到 60 个。防守方手里的牌多了,但成本也在涨——关键不是把所有手段堆上去,而是搞清楚每一层的拦截收益和代价。

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册