Bekommen HTTP-Header mit xcode
Ich versuche dem user-agent, aber wenn ich versuchen Sie es und Lesen es, es kommt heraus (null)
NSLog(@"user agent = %@", [request valueForHTTPHeaderField: @"User-Agent"]);
Anfrage ist ein NSURLRequest. So habe ich versucht, die http-Header, und ich glaube nicht, dass es Sie gibt. Wenn ich
NSLog(@"http headers = %d", [[req allHTTPHeaderFields] fileSize]);
er druckt null. req ist ein NSMutableURLRequest. Weiß jemand, warum dies geschieht.
Dies ist die Methode, die ich benutze:
- (BOOL)webView:(UIWebView )webView2 shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType {
NSMutableURLRequest *req = (NSMutableURLRequest *)request;
NSString *versionString = [[NSBundle mainBundle] objectForInfoDictionaryKey:(NSString)kCFBundleVersionKey];
NSLog(@"http headers = %@", [request allHTTPHeaderFields]);
NSLog(@"http headers = %d", [[req allHTTPHeaderFields] fileSize]);
[req setValue:[NSString stringWithFormat:@"myApp/%@ %@", versionString, [request valueForHTTPHeaderField:@"User-Agent"]] forHTTPHeaderField:@"User-Agent"];
NSLog(@"user agent = %@", [request valueForHTTPHeaderField: @"User-Agent"]);}
- Was bedeutet
NSLog(@"http headers = %d", [[req allHTTPHeaderFields] count]);
drucken? - http-header = 0
- Sie sind nicht immer alle Header zurück. müssen Sie die post mehr von deinem code, der für uns zur weiteren diagnose.
- Dies ist die Methode, die ich verwende.
- `- (BOOL)webView:(UIWebView )webView2 shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType { NSMutableURLRequest *req = (NSMutableURLRequest *)Antrag; NSString *versionString = [[NSBundle mainBundle] objectForInfoDictionaryKey:(NSString)kCFBundleVersionKey];
NSLog(@"http headers = %@", [request allHTTPHeaderFields]); NSLog(@"http headers = %d", [[req allHTTPHeaderFields] fileSize]); [req setValue:[NSString stringWithFormat:@"myApp%@ %@", versionString, [request valueForHTTPHeaderField:@"User-Agent"]] forHTTPHeaderField:@"User-Agent"]; NSLog(@"user agent = %@", [request valueForHTTPHeaderField: @"User-Agent"]); }
- Ich begann mit der Bearbeitung Ihrer post hinzuzufügen, die Methode aber klar, dass es unvollständig war. Können Sie Bearbeiten Sie Ihre post und fügen Sie den rest der Methode?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dieser arbeitete für mich:
Ich weiß nicht, warum Sie suchen
filesize
wenn Sie können, schauen Sie sich nur die Kopfzeilen selbst.Vgl. https://stackoverflow.com/a/19184414/1431728
Du nicht alle Header in Ihrer Anfrage-Objekt, weil Sie noch nicht Hinzugefügt jede. Wenn Sie angeben möchten, die
User-Agent
- header, müssen Sie es selbst, wie hier.myApp/1.0 (null)