ios UIWebView与WKWebView的UserAgent设置

ios UIWebView与WKWebView的UserAgent设置_第1张图片
锄禾日当午,汗滴禾下土;谁知盘中餐,粒粒皆辛苦.jpg
  • User-Agent(用户代理)字符串是Web浏览器用于声明自身型号版本并随HTTP请求发送给Web服务器的字符串,在Web服务器上可以获取到该字符串。

一、UIWebView的UserAgent设置:

// 这个设置需要写到appdelegate的didfinish中;
// MyUserAgent是塞自定义的信息;
// UserAgent不能包含中文;

NSString *systemUserAgent = [[[UIWebView alloc] init] stringByEvaluatingJavaScriptFromString:@"navigator.userAgent"];
NSString *newUserAgent = [systemUserAgent stringByAppendingFormat:@"/%@", @"MyUserAgent"];
[[NSUserDefaults standardUserDefaults] registerDefaults:@{@"UserAgent":newUserAgent}];

然后加载H5网页的时候,通过charles抓包就能看到我们修改后的userAgent了。


ios UIWebView与WKWebView的UserAgent设置_第2张图片
image.png

二、WKWebView的UserAgent设置:

// 导入#import 
// wkWebView需要声明为全局变量,否则会释放导致异步回调result为null;
@property (nonatomic, strong) WKWebView *wkWebView;

self.wkWebView = [[WKWebView alloc] init];
[self.wkWebView evaluateJavaScript:@"navigator.userAgent" completionHandler:^(id _Nullable result, NSError * _Nullable error) {
    NSString *newUserAgent = [result stringByAppendingFormat:@"/%@", @"MyUserAgent"];
    [[NSUserDefaults standardUserDefaults] registerDefaults:@{@"UserAgent":newUserAgent}];
}];

然后加载H5网页的时候,通过charles抓包就能看到我们修改后的userAgent了。


ios UIWebView与WKWebView的UserAgent设置_第3张图片
image.png

你可能感兴趣的:(ios UIWebView与WKWebView的UserAgent设置)