连接到服务器
问题描述:
我从来没有与Web服务器进行过接口,我知道一点点的XML,但不知道任何关于HTTP头。我需要基本上连接到服务器并传递信息(使用可可触摸),这是已提供的信息:连接到服务器
Request headers:
POST https://www.example.org/example
Content-Type: text/xml
Content-Length: 638
Authorization: [[developer-key]]
和我得到这个请求体:
<LetterValues>
<FullName><![CDATA[John Doe]]></FullName>
</LetterValues>
请求身体不仅仅是这个,为了保持简单,我删除了很多东西。
那么有人可以给我一个关于如何传递这些信息的教程或正确的方向?
答
-(void)xmlParsingInBackground
{
NSString xmlString = [NSString stringWithFormat:@"Your XML REquest"];
NSURL * serviceUrl = [NSURL URLWithString:[NSString stringWithString:@"YOUR URL"]];
NSMutableURLRequest * serviceRequest = [NSMutableURLRequest requestWithURL:serviceUrl];
[serviceRequest setValue:@"text/xml" forHTTPHeaderField:@"Content-type"];
[serviceRequest setHTTPMethod:@"POST"];
[serviceRequest setHTTPBody:[xmlString dataUsingEncoding:NSUTF8StringEncoding]];
NSData *responseData;
NSURLResponse * serviceResponse;
NSError * serviceError;
responseData = [NSURLConnection sendSynchronousRequest:serviceRequest returningResponse:&serviceResponse error:&serviceError];
NSString *resp=[[NSString alloc] initWithData:responseData encoding:NSUTF8StringEncoding];
if(responseData != NULL)
{
NSXMLParser *xmlParser = [[NSXMLParser alloc] initWithData:responseData];
[xmlParser setDelegate:self];
//[xmlParser setDelegate:parser];
BOOL success = [xmlParser parse];
if(success)
{ // DO SOMETHING HERE
}
}
做了以上的事情,并实施下列项目:
- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qualifiedName
attributes:(NSDictionary *)attributeDict
- (void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string
- (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName
这会帮助你。 :)
添加:从下面的链接下载代码,将告诉你如何实施上述方法Sizmic XML。
+0
告诉我,如果它没有。 – rptwsthi 2011-05-26 05:58:23
请说明你的意思是“传递信息”。你究竟在做什么或者你需要什么帮助?如何POST一些称为授权的标题字段的URL设置为某个值?如何处理HTTP响应?如何解析XML? – 2011-05-26 06:04:41