2012-07-19 73 views
12

由于较新版本的Safari(我正在运行5.2版本)似乎已从“窗口”菜单中删除了“活动”查看器,因此我想编写一个扩展来恢复此功能。但是,为了做到这一点,我认为我需要能够看到在该窗口/选项卡中请求的URL。对于Chrome,有一个"webRequest" API这样做,但我似乎无法找到我想要在Safari中执行此操作。请有人告诉我这是否可能,如果有的话,我应该在哪里看下?提前致谢。是否有可能监控Safari扩展中的所有网络流量?

到目前为止,最让我已经能够使用一个注入的启动脚本类似下面获得:

function trackRequests() { 
    console.log(event.timeStamp + ": " + event.type, event.url, event); 
} 
document.addEventListener("beforeload", trackRequests, true); 

然而,这并不对,我需要的功能提供足够的这个。例如,如果没有协议指定URL,例如所有这些处理程序看到的“//example.com/file.txt”;它不知道使用了什么实际的协议或请求是否被允许。

看来some people on the Apple discussion forumsMacDailyNewsArsTechnica已经表达了希望在Safari中恢复此功能的愿望。 Here's a link to another discussion on MacRumors.comanother

回答

1

在窗口,我会用菲德勒但因为你似乎在这里使用的是Mac有一些替代方案:

http://alternativeto.net/software/fiddler/?platform=mac

希望这有助于!

干杯!

+0

Http Scoop可能是您要查找的内容:http://www.tuffcode.com/。你问了一个Safari插件,但是这个工作独立于你使用的浏览器,所以你可以结合Safari使用它。 – Jos 2012-10-03 10:37:56

+0

感谢您的建议,Jos。我已经使用Fiddler,对于典型的调试和实验感到满意。但是,我特别寻找一种简单的方法来查看浏览器请求单个页面的URL列表(特别是协议和主机名以查找与SSL相关的警告)。使用代理非常乏味,因为需要刷新缓存,过滤结果等。使用新的Web检查器的网络页面并不理想,因为它需要很多次点击。现在,我可以使用旧版本的Safari并使用“活动查看器”,但希望获得更长期的内置解决方案。 – iX3 2012-10-03 15:16:14

相关问题