1

有没有办法获取 NSURLConnection 生成的实际 HTTP 请求消息?我已经使用“tcpdump”(Unix util)来解决这个问题,但想知道是否有办法以编程方式获取它?

例如,http://www.example.com/somepath/resource?v=99如果我在 NSURLConnection 中使用 URL 字符串,它显然会产生这个:

GET /somepath/resource?v?99 HTTP/1.1
Host: www.example.com
User-Agent: {myprog}/1 CFNetwork/596.2.3 Darwin/12.2.0 (x86_64) (iMac11%2C1)
Accept: */*
Date: Wed, 19 Dec 2012 03:12:12 GMT+01:00
Accept-Language: sv-se
Accept-Encoding: gzip, deflate
Cookie: {long-string}
Connection: keep-alive

其中一些 HTTP 标头可以使用setValue:forHTTPHeaderField:NSURLRequest 设置为其他值(例如“Host”和“User-Agent”),但有些不能(例如“Connection”)。

4

1 回答 1

0

[request allHTTPHeaderFields] 发送一个字典,其中仅包含您设置的键和值....

如果要查看整个请求,可以使用以下工具...

http://blog.jerodsanto.net/2009/06/sniff-your-iphones-network-traffic/

我显示请求和响应...

于 2012-12-21T07:47:41.690 回答