NSURLRequest with UserAgent

关于iOS上的http请求还在不断学习,从早先的时候发现原来iOS的http请求可以自动保存cookie到后来的,发现ASIHttpRequest会有User-Agent,到现在发现竟然NSURLRequest默认不带USer-Agent的。添加方法:

#define USERAGENT @"Mozilla/5.0 (iPhone; CPU iPhone OS 5_1_1 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Version/5.1 Mobile/9B206 Safari/7534.48.3"
NSMutableURLRequest *restRequest = [NSMutableURLRequest requestWithURL:url
    cachePolicy:NSURLRequestReloadIgnoringCacheData
    timeoutInterval:30.0];
[restRequest setValue:USERAGENT forHTTPHeaderField:@"User-Agent"];

而我的情况要稍微复杂一点,发现服务器对于我请求的URL竟然进行了跳转,还需要再实现一个代理:

-(NSURLRequest *)connection:(NSURLConnection*)connection
    willSendRequest:(NSURLRequest*)request
    redirectResponse:(NSURLResponse*)redirectResponse{
    NSMutableURLRequest *newReq = [request mutableCopy];
    [newReq setValue:USERAGENT forHTTPHeaderField:@"User-Agent"];
    return [newReq autorelease];
}

that’s all

参考资料:
NSMutableURLRequest and user-agents

转: 转自Rainbird的个人博客

时间: 2024-09-17 02:18:54

NSURLRequest with UserAgent的相关文章

iOS 修改UIWebView的UserAgent

iOS和H5交互的时候,H5需要用userAgent带一些参数,需要我们修改默认的UserAgent为自定义的. 首先,给大家普及一下userAgent的历史,点击UserAgent查看. 网上搜了好多资料.没有一个方式是好用的,总结起来,以下2个方法都不好用: 1 ,直接设置request的header里面的userAgent NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:url]; [reque

iOS 获取User-Agent

第一种方法 UIWebView *webView = [[UIWebView alloc] initWithFrame:CGRectZero];    NSString *userAgent = [webView stringByEvaluatingJavaScriptFromString:@"navigator.userAgent"];    NSLog(@"-----------------%@",userAgent); 第二种方法 @interface Vie

iOS UIWebView 自定义 UserAgent

我的需求是:用户使用我的浏览器浏览网页,服务器可以得到我的浏览器名称和版本号,站长工具能查看到客户端来源.OK,解决思路就是修改系统默认的用户代理UserAgent,这是没差的. 曾经做过的App也有这样的需求,思路是在UIWebView 的 Request 的 Header 中设置 UserAgent,最后证实这条思路是行不通的,后来由于时间问题,这个功能就放弃了.如今有个App又有这个需求,看到UC浏览器设置中有个UA设置,让我很是羡慕,果然愿意解决问题的人总是幸运的,再网上找到相关文章.了

各种浏览器的user-agent和

PC端的UserAgent safari 5.1 – MAC User-Agent:Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_8; en-us) AppleWebKit/534.50 (KHTML, like Gecko) Version/5.1 Safari/534.50 safari 5.1 – Windows User-Agent:Mozilla/5.0 (Windows; U; Windows NT 6.1; en-us) AppleW

常见的User-Agent及免费代理IP网站

常见的User-Agent: 1.Android Mozilla/5.0 (Linux; Android 4.1.1; Nexus 7 Build/JRO03D) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.166 Safari/535.19 Mozilla/5.0 (Linux; U; Android 4.0.4; en-gb; GT-I9300 Build/IMM76D) AppleWebKit/534.30 (KHTML,

不同浏览器的userAgent

一.IE浏览器 //IE6 "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)" //IE7 "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)" //IE8 "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.5

navigator.userAgent 取值都带有Mozill的原因。看完我笑了

最早的时候有一个浏览器叫NCSA Mosaic,把自己标称为NCSA_Mosaic/2.0 (Windows 3.1),它支持文字显示的同时还支持图片,于是Web开始好玩起来. 然后出现了一个新的网页浏览器,"Mozilla",其实就是"Mosaic终结者"的意思,这搞的Mosaic很不爽,(毕竟Mosaic出道早,江湖老),新浏览器最后正式公布的名称是Netscape,它把自己标称为Mozilla/1.0 (Win3.1),更好玩了.Netscape支持框架显示,

IOS NSURLRequest(http请求)讲解 ---------赎罪之路

前言 很久没有写过博客了,今天终于可以抽空写.公司的项目从2016年03月15日(我第二份工作任职)开始,辛苦了3个多月终于接近尾声了,在这当中我学了非常多东西,为了遗忘我就写个博客来记录下,以防止忘记. 正文 今天要讲的主角是NSURLRequest.这里我先采用apple 官方文档解释 NSURLRequest objects represent a URL load request in a manner independent of protocol and URL scheme, NS

Apache2.4使用require指令进行访问控制--允许或限制IP访问/通过User-Agent禁止不友好网络爬虫

从Apache2.2.X到Apache2.4.X,在配置上稍微有点不同,需要特别注意.现在记录下关于访问控制的配置. 经过苦苦搜索,终于配置成功.参考了这篇文章:http://www.cnblogs.com/leoyu/p/apache24_use_require_for_access_control_by_ip_and_useragent.html 关于Location配置的灵感,是从这篇文章看到的:http://www.bubuko.com/infodetail-336400.html 上文