我如何拦截Cocoa应用程序中的HTTP流量?

Jar*_*dom 4 cocoa objective-c

好的,我想要做的是创建一个后台代理,监视进出某个应用程序的http流量,并在有特定网站的请求和响应时执行操作.在Cocoa有一个很好的方法吗?我想避免使用真正的低级别嗅探和/或要求root访问权限(管理员访问权限).

Sve*_*ven 7

如果您尝试监视的应用程序支持代理服务器,您可以编写一个并在您的应用程序中使用它.这可能是最简单的解决方案.

如果不工作,你可以使用类似mach_injectmach_override覆盖一些插座系统调用(socket以及write在你要监控程序可能是足够了).这虽然是某种黑暗艺术,所以你可能最好使用类似嗅探器tcpdump并使用管道来控制它.

除代理解决方案外,所有这些都需要管理员权限(与root几乎相同).