chrome v3开发插件实现所有网站允许跨域

场景:

chrome 插件 升级到v3后,原来修改请求响应都变成异步,即无法同步拦截来修改请求响应。

在v3中也不支持修改请求响应内容。

问题:如何在chrome v3中允许其他网站跨域呢。

方式一:禁用chrome跨域,禁用prefight 。自行百度

方式二:通过chrome插件,可以移除或修改header来处理

本文采用方式二:

参考资料:

CORS 跨域 access-control-allow-headers 的问题-CSDN博客

通过该流程图可以看到 满足某些条件会触发preflight,从而需要option请求

更多资料倾情奉献:

基本看懂CORS的资料:

CORS 跨域 access-control-allow-headers 的问题-CSDN博客 (CROS流程图)

https://www.cnblogs.com/zhumengke/articles/11715656.html

官网:enable cross-origin resource sharing

官网(顺带讲解http参数)Fetch Standard

详细了跨域流程后,我们可以移除跨域相关属性,或者修改相关属性就可以了。

举例:百度跨域

declarativeNetRequest实现跨域: declarativeNetRequest - Mozilla | MDN

localhost中iframe引入百度,发现跨域。
//旧的拦截监听器都是异步不支持阻塞修改请求,v3需要declarativeNetRequest拦截修改(测试可用)1)mainfest.json中关键配置,2个节点。"permissions": ["declarativeNetRequest","declarativeNetRequestWithHostAccess","declarativeNetRequestFeedback"],"declarative_net_request": {"rule_resources": [{"id": "1","enabled": true,"path": "js/ruleset1.json"}]},
2)  ruleset1.json 配置拦截和替换
[{"id": 1,"priority": 1,"condition": {"urlFilter": "|http*","resourceTypes": ["csp_report","font","image","main_frame","media","object","other","ping","script","stylesheet","sub_frame","webbundle","websocket","webtransport","xmlhttprequest"]},"action": {"type": "modifyHeaders","responseHeaders": [{"header": "Content-Security-Policy","operation": "set","value": ""}]}}
]
//百度通过Content-Security-Policy(CSP)控制,这里直接置空就可以了。

阅读本文建议首先了解跨域和chrome插件开发知识

chrome插件英文mozilla文档:

有时间再详细说吧,上述提供的内容,已经能实现标题所述。

当然想了解更多诸如跨域、广告拦截等可以分析adblock源码

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

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

相关文章

云安全—Dashboard 攻击面

0x00 前言 众所周知,如果只是一味的REST接口或者命令行话的操作方式,就会变相的提高操作门款,并且不会有很好的呈现方式,所以就有了web ui的方式,也就是Dashboar面板,本篇主要讨论一下关于Dashboar面板的概…

虹科示波器 | 汽车免拆检测 | 2017款长安福特翼虎车发动机故障灯异常点亮

一、故障现象 一辆2017款长安福特翼虎车,搭载CAF488WQ9发动机,累计行驶里程约为8.9万km。该车因发动机故障灯异常点亮在其他维修厂检修,维修人员用故障检测仪检测,提示气缸3失火,调换火花塞、点火线圈及喷油器&#xf…

图论——并查集

参考内容: 图论——并查集(详细版) 并查集(Disjoint-set)是一种精巧的树形数据结构,它主要用于处理一些不相交集合的合并及查询问题。一些常见用途,比如求联通子图、求最小生成树的 Kruskal 算法和求最近公共祖先&…

如何实现生产质量精细化管理?

导 读 ( 文/ 1528 ) 在现代制造业中,实现生产质量的精细化管理对企业的竞争力至关重要。本文将介绍三个关键步骤,包括建立全面质量管理体系、采用数据驱动的质量监控和实时反馈机制,以及持续改进和员工培训,帮助企业实现生产质量的…

文献阅读 - JADE:具有可选外部存档的自适应差分进化

文章目录 标题摘要关键字结论研究背景I. INTRODUCTION 常用基础理论知识II. BASIC OPERATIONS OF DEIII. ADAPTIVE DE ALGORITHMSA. DESAPB. FADEC. SaDED. jDE 研究内容、成果IV. JADEA. DE/Current-to-pbestB. Parameter AdaptationC. Explanations of the Parameter Adaptat…

高性能三防工业平板电脑 防摔防爆电容屏工控平板

HT1000是一款高性能工业三防平板,10.1英寸超清大屏,厚度仅14.9mm,超薄机身,可轻松插入袋中,方便携带,搭载8核2.0GHz高性能CPU,行业领先的Android 11.0,设备性能大幅提升,…

VScode连接Xshell 并解决【过程试图写入的管道不存在】报错

一.下载vscode 国内镜像: https://vscode.cdn.azure.cn/stable/6c3e3dba23e8fadc360aed75ce363ba185c49794/VSCodeUserSetup-x64-1.81.1.exe二.打开vscode在扩展搜索SSH并安装 三.添加主机 按F1选择添加新的ssh主机 按格式输入后在左边会出现电视的图标 之后输入…

不同对话分支的生成展示

第一个分支 第二个分支 生成过程 苏州有几个区 curl -H content-type: application/json -H Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE2OTk1OTM5MzYsInVzZXJfaWQiOiI2In0.MkYG3nBcR-ROHvARpEfnWiw-Jsplap73qEeDn-L7v8I -d {"model"…

Vue的数据来源详解

目录 前言 在页面中动态展示数据 哪个配置项可以给模板语句提供数据 如何将data中的数据插入到模板语句中 如果data中的key:value对,value为对象时,如何取出其中的数据插入到模板语句中 如果data中的key:value对,value为数组时&#xff…

centos 7部署Mysql8.0主从

Mysql官网中关于部署主从的网址 环境准备: 搭建虚拟机和安装Mysql之前的文章中已经涉及,在此不再赘述。 主从IPMysql账号密码主192.168.213.4root/Root1234!从192.168.213.5root/Root1234! 1、主数据库设置 配置my.cnf 一般存放于/etc/。 主从配…

LangChain之关于RetrievalQA input_variables 的定义与使用

最近在使用LangChain来做一个LLMs和KBs结合的小Demo玩玩,也就是RAG(Retrieval Augmented Generation)。 这部分的内容其实在LangChain的官网已经给出了流程图。 我这里就直接偷懒了,准备对Webui的项目进行复刻练习,那么…

web3 dapp React项目引入 antd 对 balance 用户token信息组件进行样式改造

好 上文 web3 React dapp中编写balance组件从redux取出并展示用户资产 我们简单处理了用户资产的展示 那么 我们继续 先启动 ganache 环境 终端输入 ganache -d然后 打开我们的项目 将合约发布到区块链上 truffle migrate --reset然后 我们启动项目 确认一切正常 还原到上文…