可以在iPhone上使用用户代理作为Safari来请求UIWebView吗?

时间:2010-04-05 18:53:42

标签: iphone uiwebview user-agent

我尝试通过此网址申请我的申请

http://reader.mac.com/mobile/v1/http%3A%2F%2Ffeeds.feedburner.com%2F9To5Mac-MacAllDay

并且它还返回仅在iPhone上可用

我该如何解决?

mycode的

NSMutableURLRequest *urlRequest = [[NSMutableURLRequest alloc] initWithURL: [NSURL URLWithString: myurl]];
    [urlRequest setValue: @"iPhone" forHTTPHeaderField: @"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 Safari/528.16"];
    [self.myWebView loadRequest:urlRequest];

2 个答案:

答案 0 :(得分:1)

UIWebView实际上在加载URL之前重置了请求的用户代理。因此,您可能需要执行method swizzling来实际更改UIWebView加载的用户代理字符串。请注意,method swizzling could be dangerous

There's a post包含此代码。

答案 1 :(得分:0)

http标头字段的名称是User-Agent。 试试这个:

    [urlRequest setValue: @"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 Safari/528.16" 
      forHTTPHeaderField: @"User-Agent"];