我可以捕获已通过用户脚本/Chrome 扩展程序发送的 JSON 数据吗?
我正在尝试编写一个用户脚本/Chrome 扩展来捕获使用 Web 服务时发送的 JSON 数据,以便我可以重新格式化它并在页面上显示选定的部分。目前,JSON 是在应用程序加载时发送的(正如我通过使用 Fiddler 2 观察流量所观察到的)。我是再次请求 JSON 的唯一选择还是可以捕获?由于我没有提供代码示例,因此请求的答案甚至是关于研究方法/主题的一些指导,或者我是否找错了树。
I'm trying to write a userscript/Chrome extension to capture JSON data being sent while using a web service so that I can reformat it and display selected portion on page. Currently the JSON is sent as the application loads (as I've observed from watching traffic with Fiddler 2). Is my only option to request the JSON again or is capture possible? As I'm not providing a code example, a requested answer is even some guidance on what method / topic to research or if I'm barking up the wrong tree.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
没有简单的方法。
如果是针对特定站点,您可能会考虑拦截并覆盖发送请求的部分代码。例如,如果它是通过单击按钮发送的,您可以用您自己的实现替换现有的单击处理程序。
您还可以尝试为
XMLHttpRequest
创建代理。不确定这是否可能,从未见过有效的示例。您可以在此处查看一些尝试。对于所有这些任务,您可能需要在沙盒内容脚本之外运行 javascript 代码,以便能够访问父页面变量,因此您需要将
标记与您的代码直接注入到来自内容脚本的页面:
No easy way.
If it is for a specific site you might look into intercepting and overwriting part of a code which sends a request. For example if it is sent on a button click you can replace existing click handler with your own implementation.
You can also try to make a proxy for
XMLHttpRequest
. Not sure if this even possible, never seen a working example. You can look at some attempts here.For all these tasks you probably would need to run your javascript code out of sandboxed content script to be able to access parent page variables, so you would need to inject
<script>
tag with your code right into the page from a content script: