如何用uiwebview打开php网页?

时间:2012-03-14 12:51:53

标签: php iphone xcode uiwebview

我正在尝试在uiwebview中打开/显示rssfeed http://www.golfweekly.nl/rss.php。但屏幕保持空白。打开http://www.google.com只会显示Google内容。

这就是我的WebView.m文件的外观:

// Implement viewDidLoad to do additional setup after loading the view, typically from a nib.
- (void)viewDidLoad {
    [super viewDidLoad];

    NSString *strWebPage = @"http://www.golfweekly.nl/rss.php";
    NSURL *url = [NSURL URLWithString:strWebPage];
    NSURLRequest *requestURL = [NSURLRequest requestWithURL:url];

    [webViewBuienRadar loadRequest:requestURL];
    [strWebPage release];   

}

在一些非常有用的提示/响应之后,它可以使用以下代码:

//在加载视图后实现viewDidLoad以进行其他设置,通常是从笔尖。

- (void)viewDidLoad {
    [super viewDidLoad];

    NSString * userAgent = @"Mozilla/5.0 (iPhone; U; CPU like Mac OS X; en) AppleWebKit/420+(KHTML, like Gecko) Version/3.0 Mobile/1A543a Safari/419.3";
    NSString * urlString = @"http://reader.mac.com/mobile/v1/http%3A%2F%2Fwww.golfweekly.nl%2Frss.php";
    NSURL *URL = [NSURL URLWithString:urlString];
    NSMutableURLRequest *req = [NSMutableURLRequest requestWithURL:URL];
    [req setValue:userAgent forHTTPHeaderField:@"User-Agent"];
    NSURLResponse* response = nil;
    NSError* error = nil;
    NSData* data = [NSURLConnection sendSynchronousRequest:req
                                         returningResponse:&response
                                                     error:&error];
    [webViewBuienRadar loadData:data MIMEType:@"text/html" textEncodingName:@"utf-8" baseURL:URL];
}

2 个答案:

答案 0 :(得分:3)

您上面的网址是RSS而不是HTML网页。主要的桌面浏览器(如firefox等)具有解析RSS并将其呈现为用户可读形式的功能。据我所知,UIWebView没有此功能,因此无法加载页面。您需要自己解析RSS文件,并根据它生成HTML页面(甚至是表格​​视图内容等)。

答案 1 :(得分:0)

请参阅that post,您可以在其中找到一条建议,允许您解析传入的RSS Feed,因为UIWebview不会显示它。

另一个不错的解决方案允许您更改用户代理。