2011-12-06 14 views
0

こんにちはiamはクライアントサーバーiphoneアプリケーションを作成しています。ウェブサイトからXMLフィードを読み込むためにnsxmlを使用しています...前にPHPサービスを作成しました。それはうまくいった。nsxmlは動作しますが、私のサービスでは動作しません

まだ私は私のエラーコードので、76

を与え、それが保管サービスを書いた後、私は私は私のPHPページ..and、そこから先に別のウェブサイトから受け取ることに成功した、まったく同じのRSSフィードをエコーされましたまだそれを読むことを拒否し、それは私に同じ76コードエラーを与える!!!! XMLをパース エラー:Webサイトから話フィードをダウンロードすることができません(エラーコード76)

- (void)parserDidStartDocument:(NSXMLParser *)parser { 
    NSLog(@"found file and started parsing"); 
} 

- (void)parser:(NSXMLParser *)parser parseErrorOccurred:(NSError *)parseError { 
    NSString * errorString = [NSString stringWithFormat:@"Unable to download story feed from web site (Error code %i)", [parseError code]]; 
    NSLog(@"error parsing XML: %@", errorString); 
    UIAlertView * errorAlert = [[UIAlertView alloc] initWithTitle:@"Error loading content" message:errorString delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil]; 
    [errorAlert show]; 
} 
- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict{ 
    //NSLog(@"found this element: %@", elementName); 
    currentElement = [elementName copy]; 
    if ([elementName isEqualToString:@"item"]) { 
     // clear out our story item caches... 
     item = [[NSMutableDictionary alloc] init]; 
     currentTitle = [[NSMutableString alloc] init]; 
     currentDate = [[NSMutableString alloc] init]; 
     currentSummary = [[NSMutableString alloc] init]; 
     currentLink = [[NSMutableString alloc] init]; 
    } 
} 



- (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName{ 
    //NSLog(@"ended element: %@", elementName); 
    if ([elementName isEqualToString:@"item"]) { 
    // save values to an item, then store that item into the array... 
     [item setObject:currentTitle forKey:@"title"]; 
     [item setObject:currentLink forKey:@"link"]; 
     [item setObject:currentSummary forKey:@"summary"]; 
     [item setObject:currentDate forKey:@"date"]; 
     [stories addObject:[item copy]]; 
     NSLog(@"adding story: %@", currentTitle); 
    } 
} 
- (void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string{ 
//NSLog(@"found characters: %@", string); 
// save the characters for the current item... 
    if ([currentElement isEqualToString:@"title"]) { 
     [currentTitle appendString:string]; 
    } else if ([currentElement isEqualToString:@"link"]) { 
     [currentLink appendString:string]; 
    } else if ([currentElement isEqualToString:@"description"]) { 
     [currentSummary appendString:string]; 
    } else if ([currentElement isEqualToString:@"pubDate"]) { 
     [currentDate appendString:string]; 
    } 
} 


- (void)parserDidEndDocument:(NSXMLParser *)parser { 
    NSLog(@"all done!"); 
    NSLog(@"stories array has %d items", [stories count]); 
    // [newsTable reloadData]; 
} 

答えて

0

ハイあなたは、次のコードを使用していますが、theRequestここNSXMLParserDelegate

NSURLConnection *theConnection = [[NSURLConnection alloc] initWithRequest:theRequest delegate:self]; 

if(theConnection) 
{ 
// NSLog(@"theConnection.........%@",theConnection); 
    webData = [[NSMutableData data] retain]; 
} 
else 
{ 
    // NSLog(@"theConnection is NULL"); 
} 

を行っていることを確認することができますURL Webサービスが含まれています。次のコードを追加します。

-(void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response { 

[webData setLength: 0];} 


-(void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data { 
[webData appendData:data];} 

-(void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error { 
[connection release]; 
[webData release];} 

-(void)connectionDidFinishLoading:(NSURLConnection *)connection { 
if(xmlParser) 
{ 
    [xmlParser release]; 
} 

xmlParser = [[NSXMLParser alloc] initWithData: webData]; 
[xmlParser setDelegate: self]; 
[xmlParser setShouldResolveExternalEntities: YES]; 
[xmlParser parse]; 

[connection release]; 
[webData release]; 
} 

そして、あなたの解析委任方法を使用する必要があります。私はそれが正常に動作することを願って

+0

私はあなたが少しでも助けることができるようにそれが動作しているかどうかを知らせてください – sandy

+0

それはすべてのボディ.. ..問題は、私は私のxmlに空のノードを持っていた.. ..私の悪い.... thnx砂のur素晴らしい超人.. – user1083237

関連する問題