iphone - 如何使用用户代理初始化 NSURLRequest

标签 iphone objective-c ios

通常 http 用户代理是这样的:

Mozilla/5.0 (iPhone; U; CPU iPhone OS 3_0 like Mac OS X; en-us) AppleWebKit/528.18 (KHTML, like Gecko) Version/4.0 Mobile/7A341

如果我

NSMutableURLRequest *newUserAgentRequest = (NSMutableURLRequest*)[NSURLRequest requestWithURL:self.url];
    NSString *userAgent = [newUserAgentRequest valueForHTTPHeaderField:@"User-Agent"];

userAgent 为 nil 或空意味着

NSMutableURLRequest *newUserAgentRequest = (NSMutableURLRequest*)[NSURLRequest requestWithURL:self.url];

没有包含用户代理,如何使用用户代理发起请求?

最佳答案

我只是像下面那样做了。这适用于 iOS 设备:

NSMutableURLRequest *urlRequest = [[NSMutableURLRequest alloc] 
                                       initWithURL:[NSURL URLWithString:[yourURL stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]]];
NSString *userAgent = [NSString stringWithFormat:@"%@ %@",[UIDevice currentDevice].systemName,[UIDevice currentDevice].systemVersion];
[urlRequest setValue:userAgent forHTTPHeaderField:@"User-Agent"];

希望对你有帮助

关于iphone - 如何使用用户代理初始化 NSURLRequest,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11239769/

相关文章:

ios - 苹果是否允许应用程序让用户将图像发布到论坛等共享页面?

iphone - 在两个 Sprite 之间创建距离缓冲区

ios - 从一些已解析的 NSString 中提取文本

ios - 如何针对随 SDK 变化的方法创建单元测试?

ios - 如何在 RXSwift 中重置 Observable 间隔运算符?

ios - 位置坐标在 swift 中返回 nil

iphone - 将最近使用的按钮放在其他人的前面

Objective-C 消息传递

ios - 对变量名或枚举大小写使用 unicode 箭头字符

ios - 在 native 应用程序和网站之间共享凭据