2011-04-23 56 views
2

我想發送一個查詢作爲URL的一部分來獲取XML文件,然後嘗試使用NSXMLParser和initWithContentsOfURL解析XML文件。但解析器無法解析文件。我用相同的文件測試瞭解析器,但是這次這個文件被保存在服務器上(它並沒有被生成),它工作得很好,所以我知道它不是解析器的問題。如何讓initWithContentsOfURL等待動態生成的xml頁面?

我一直以爲它不解析它,因爲我需要在我試圖解析它之前加載文件,或者給initWithContentsOfURL時間加載內容。所以我試圖把這些內容放在一個NSString和一個NSData中,並且使用睡眠函數以及使用一個塊,但是這也不起作用。

什麼是最好的方式去解決這個問題?

下面是一些代碼:

NSString *surl = [NSString stringWithFormat:@"http://lxsrv7.oru.edu/~maria_hernandez/query.xml"]; 
url = [NSURL URLWithString:surl]; 
NSString *curl = [[NSString alloc] initWithContentsOfURL:url]; 

NSLog(@"URL: %@", surl); 
NSLog(@"URL Content: %@", curl); 

SXMLParser *xmlParser = [[NSXMLParser alloc] initWithData:receivedData]; 

//Other stuff we have tried: 
NSURLRequest *theRequest = [NSURLRequest requestWithURL:[NSURL URLWithString:surl] cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:60.0]; 
NSURLResponse = nil; 
NSError = nil; 
receivedData = [NSURLConnection sendSynchronousRequest: theRequest returningResponse: &theResponse error: &error]; 

讓我知道如果您有更多問題,或者如果你想看到更多的代碼。 謝謝!

回答