好的。我一直在处理原始的HTTP请求,并发现我可以将原始的HTTP响应发布到NSLog中,我已经几乎将原始的HTTP请求转换成了NSLog。我现在只是有点卡住了。
代码示例
NSString *CurrentWebURL = webView.request.URL.absoluteString;
NSURLSession *session= [NSURLSession sessionWithConfiguration:[NSURLSessionConfiguration defaultSessionConfiguration]];
[[session dataTaskWithRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:CurrentWebURL]] completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {
NSDictionary *requestdictionary = [request allHTTPHeaderFields];
NSLog(@"----shouldStartLoadWithRequest Raw HTTPRequest Start ----");
for (NSString *Object in [requestdictionary allKeys]) {
NSLog(@"%@: %@",Object, [requestdictionary objectForKey:Object]);
}
NSLog(@"----shouldStartLoadWithRequest Raw HTTPRequest Finish ----"] withlevel:SPECIAL_LOG);
}]resume];
原始请求:
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
User-Agent: Mozilla/5.0 (iPad; CPU OS 7_0_6 like Mac OS X) AppleWebKit/537.51.1 (KHTML, like Gecko) Mobile/11B651
它应该显示给我"Get:URL", "HOST", "Connection: Keep-alive", "Accept-Encoding", "Accept", "Cookie", "Connection", "Accept-Language"和"User-Agent"。
我的问题是为什么只显示"Accept"和"User-Agent"?
发送请求:
NSURL *url = [NSURL URLWithString:PortalURL];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:60.0];
[request setHTTPShouldHandleCookies:YES];
[request setHTTPMethod: @"GET"];
Fiddler请求跟踪(不包括任何自定义头部):
GET http://URL/ HTTP/1.1
Host: Host.co.uk
Connection: keep-alive
Accept-Encoding: gzip, deflate
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Cookie: IsosecCookie=Chris%20Beckett
Connection: keep-alive
Accept-Language: en-gb
User-Agent: Mozilla/5.0 (iPad; CPU OS 7_0_6 like Mac OS X) AppleWebKit/537.51.1 (KHTML, like Gecko) Mobile/11B651
在 NSLog 中记录请求头:
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
User-Agent: Mozilla/5.0 (iPad; CPU OS 7_0_6 like Mac OS X) AppleWebKit/537.51.1 (KHTML, like Gecko) Mobile/11B651
request
对象并设置头部字段的吗? - Stonz2