一个好玩的浏览器插件

背景

最近抽空开发了一个有意思的浏览器插件。背景是我们在开发过程中有时需要做一些测试验证,需要修改请求头字段和响应头字段的内容,有时需要在页面做测试,反复请求同一个接口,并修改一些字段。
如果此时使用nginx做代理转发再修改的话,那就比较麻烦,还需要在本地配置一个nginx服务,所以就抽时间开发了一个浏览器插件,只需要安装好这个插件,按需将需要修改的请求地址和修改的请求头/响应头配置之后就可以了。

代理请求头

可以在插件请求头面板中点击新增按钮,然后再弹出的弹框中输入期望代理的URL规则。
在这里插入图片描述
比如这里以京东首页为例,新增了一条规则在发出getInfo请求的时候增加一个请求头的字段x-header-token对应的值为x-header-token。配置好之后保存规则
在这里插入图片描述
之后在规则列表中点击使用规则,此时该规则已近生效,我们可以看到后续浏览器发出xxx/getInfo请求时都会额外携带一个请求头的字段x-header-token: x-header-value:
在这里插入图片描述
除了新增请求头之外也可以按需设置规则,进行请求的阻断,请求头的替换和请求头的删除,比如我们需要测一下是否支持br压缩的话,可以将Accept-Encoding设置为br。然后再看压缩效果。
再比如我自己遇到的一个场景,代理调用某些服务的时候,网关对请求的Origin进行了校验,这样在开发的时候本地启动的127.0.0.1就会被拦截,此时只需要配置一下修改的规则,就可以把Origin给修改成自己想要的地址,就可以正常使用代理进行开发工作了

代理响应头

和代理请求头一样,也可以按照自己的需要去代理一些响应头,比如某些时候调用某些接口,我们期望返回一些额外的响应头信息帮助前端做一些验证。那就可以在代理响应头面板中进行设置。
比如下面,我们可以按照这样设置增加一个响应头规则。
在这里插入图片描述
同样配置好规则之后,在规则列表中开启这个规则。后面浏览器中接受到的这个接口的响应都会增加一个x-header-response: x-header-response-value的字段:
在这里插入图片描述

域名代理

这个功能可以帮我们配置域名的转发,一个很常用的场景就是线上的某些配置文件是从CDN的生产环境获取的(或者其他的一个资源服务),此时需要从测试环境获取这个配置文件来帮我们快速的做一些验证或者测试的话,那我们就可以使用这个代理,将原本请求A服务的资源重定向到B服务。

发送请求

这个功能可以让我们在页面发送某些指定的请求来方便我们做一些观察或者实验,有时我们可能会使用浏览器的XHR重放请求,但此时请求所携带的Cookie是页面中的,这个插件牛逼的地方就是可以在同源下去发送这个请求,并且这个请求的Cookie是可以自定义的。比如下面这个请求,页面原本有自己的Cookie,但此时发送的这个请求的Cookie被我们设置的my-cookie覆盖了,其他接口没有影响,还是使用页面原本的Cookie这样在一些场景中可以帮我们做一些快速验证和测试。
在这里插入图片描述

上面的四种规则可以配置之后同时使用应用到符合条件的请求中

安装地址

Chrome应用商店

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/130558.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数据库数据恢复-Oracle数据库truncate的数据恢复案例

Oracle数据库故障&分析: 北京某单位Oracle 11g R2数据库误执行truncate table CM_CHECK_ITEM_HIS,表数据丢失,查询该表时报错。数据库备份无法使用,表数据无法查询。 Oracle数据库Truncate数据的机理:执行Trunca…

element ui 表格组件与分页组件的二次封装

目录 效果图 组件封装 parseTime函数 debounce 函数 render通用渲染模版 页面使用 【扩展】vue 函数式组件 函数式组件特点: 函数式组件的优点: 【扩展】vue中的render函数 一、初步认识render函数 二、为什么使用render函数 三、render函数…

智慧工地:让工地可视化、数字化、智能化

智慧工地平台功能包括:劳务管理、施工安全管理、视频监控管理、机械安全管理、危大工程监管、现场物料监管、绿色文明施工、安全隐患排查、施工综合管理、施工质量管理、设备管理、系统管理等模块。 一、项目开发环境 技术架构:微服务 开发语言&#…

【面试高频题】二叉树“神级遍历“入门

题目描述 这是 LeetCode 上的 「99. 恢复二叉搜索树」 ,难度为 「中等」。 Tag : 「二叉树」、「树的搜索」、「递归」、「迭代」、「中序遍历」、「Morris 遍历」 给你二叉搜索树的根节点 root,该树中的 恰好 两个节点的值被错误地交换。请在不改变其结…

【Hive SQL】统计同名路径下目录数量(基于reverse、split和substr函数)

首先,Hive事务表所产生的的路径信息如下: PS:其中路径信息格式为 /user/hive/warehouse/${database_name}.db/${table_name}/*/user/hive/warehouse/test.db/tran_ts/delete_delta_0000002_0000002_0000 /user/hive/warehouse/test.db/tran_…

【脑机接口开源数据处理包】brainflowBrainFlow是一个库,旨在获取,解析和分析脑电图,肌电图,心电图和其他类型的数据从生物传感器。

BrainFlow是一个库,旨在获取,解析和分析脑电图,肌电图,心电图和其他类型的数据从生物传感器。 brainflow开源库官网地址 [https://brainflow.readthedocs.io/en/stable/](https://brainflow.readthedocs.io/en/stable/) 它提供了…

AntDB数据库参加ACDU中国行杭州站,分享数据库运维实践与经验

关于ACDU 和中国行: ACDU是由墨天轮社区举办的中国数据库联盟的品牌活动之一,在线下汇集数据库领域的行业知名人士,共同探讨数据库前沿技术及其应用,促进行业发展和创新的平台,也为开发者们提供友好交流的机会。 AntDB作为具有技术…

Facebook 广告:如何为移动设备投放广告

图片来源于:SaleSmartly官网 如果您希望目标受众发现并看到您的企业,那么广告是至关重要的,但是哪些是宣传您的品牌的最佳方式呢?当今最常用的平台(手机)上的广告怎么样?能够回答这些问题很重要…

Postman —— HTTP请求基础组成部分

一般来说,所有的HTTP Request都有最基础的4个部分组成:URL、 Method、 Headers和body。 (1)Method 要选择Request的Method是很简单的,Postman支持所有的请求方式。 (2)URL 要组装一条Request…

Android获取系统读取权限

在Androidifest.xml文件中加上授权语句 <uses-permission android:name"android.permission.WRITE_EXTERNAL_STORAGE"/><uses-permission android:name"android.permission.READ_EXTERNAL_STORAGE"/>

01 PHP基础知识讲解

一 php基础知识 PHP文件的默认拓展名是“php”。 PHP文件中包含HTML标记、PHP标记、PHP代码以及空格和注释。 PHP标记&#xff1a;开始标记<?php 结束标记 ?> 中间内容是PHP代码。 PHP代码&#xff1a;学习第一个指令 echo 功能是用于输出字符串 。 语句结束符&a…

电脑更换硬盘的时候怎么迁移系统?

为什么需要迁移系统&#xff1f; 在一些关于电脑DIY或Windows相关的论坛社区中&#xff0c;有很多人发帖询问怎么迁移系统。那么这个系统迁移&#xff0c;究竟是何含义呢&#xff1f;通俗易懂地解释一下&#xff0c;就是创建一个完整无缺的操作系统复制品&#xff0c;它与系…

一文了解VR全景,VR全景有哪些优势?

引言&#xff1a; VR全景技术近年来崭露头角&#xff0c;已经成为宣传领域的一大亮点。不仅在娱乐&#xff0c;旅游行业广泛应用&#xff0c;还在商业和教育等领域崭露头角。 一&#xff0e;什么是VR全景&#xff1f; VR全景&#xff0c;全名Virtual Reality Panorama&#x…

服务器数据恢复-EVA存储多块硬盘磁头和盘片损坏离线的数据恢复案例

服务器数据恢复环境&#xff1a; HP EVA某型号存储&#xff0c;存储中一共有23块磁盘&#xff0c;上层映射给一台windows server服务器上。 服务器故障&检测&分析&#xff1a; 该EVA存储上三块硬盘指示灯显示黄色&#xff0c;此时存储设备还能正常工作。运维更换显示黄…

SLAM从入门到精通(编写第一个package)

【 声明&#xff1a;版权所有&#xff0c;欢迎转载&#xff0c;请勿用于商业用途。 联系信箱&#xff1a;feixiaoxing 163.com】 前面我们安装了ROS环境&#xff0c;接着就可以开始进行ROS程序的开发了。在开发之前&#xff0c;我们有几个概念需要厘清一下。第一个是workspace&…

springboot之三:原理分析之自动配置condition

导入&#xff1a; SpringBoot是如何知道要创建哪个Bean的&#xff1f;比如Spring Boot是如何知道要创建RedisTemplate的&#xff1f; Condition&#xff1a; Condition是在Spring4.0增加的条件判断功能&#xff0c;通过这个可以实现选择性的创建Bean操作。 自定义条件&…

数仓学习之DWD学习

登录不是原子行为&#xff0c;而登录成功是&#xff0c; 而支付也不是原子&#xff0c;也分成功失败。 什么是原子型? 一条线 注意一下密码, mysql的密码是MD5加密,而MD5的长度为固定的32 1.怎么构建事务表? 1.确定表名 2.确定一行数据所表示的含义 3.确定列定义 4.确定度…

让NPU跑起来iTOP_RK3588开发板在Linux系统中使用NPU

下载 rknpu2 并拷贝到虚拟机 Ubuntu&#xff0c;如下图所示&#xff0c;RKNPU2 提供了访问 rk3588 芯片 NPU的高级接口。 下载地址为“iTOP-3588 开发板\02_【iTOP-RK3588 开发板】开发资料\12_NPU 使用配套资料\01_rknpu2 工具” 对于 RK3588 来说&#xff0c;Linux 平台 RK…

2023最新软件测试面试题大全(包含答案)

前言 在我认为&#xff0c;对于测试面试以及进阶的最佳学习方法莫过于刷题博客书籍视频总结&#xff0c;前几者博主将淋漓尽致地挥毫于这篇博客文章中&#xff0c;至于总结在于个人&#xff0c;实际上越到后面你会发现面试并不难&#xff0c;其次就是在刷题的过程中有没有去思考…

Postman接口压力测试 ---- Tests使用(断言)

所谓断言&#xff0c;主要用于测试返回的数据结果进行匹配判断&#xff0c;匹配成功返回PASS&#xff0c;失败返回FAIL。 下图方法一&#xff0c;直接点击右侧例子函数&#xff0c;会自动生成出现在左侧窗口脚本&#xff0c;只需修改数据即可。 方法二&#xff1a;直接自己写脚…