我在项目中使用CocoaHTTPServer,现在我需要用字符串响应一个简单的GET请求。因此,我检查了传入的参数,并用我想要返回的字符串创建了一个NSString对象。但是我不知道如何返回这个字符串。显然,我不能使用"return xmlList",因为xcode要记住,指针是不兼容的。服务器需要一个结果类型NSObject。我该怎么办?
- (NSObject<HTTPResponse> *)httpResponseForMethod:(NSString *)method URI:(NSString *)path{
HTTPLogTrace();
if ([path isEqualToString:@"/getPhotos"]){
NSString *xmlList = [[NSString alloc] init];
MyServerMethods* myServerMethods = [[MyServerMethods alloc] init];
xmlList = [myServerMethods getPhotos];
NSLog(@"RETURN PHOTOS LIST %@", xmlList);
}
return nil;
}
感谢
好的,我已经解决了这种模式下的问题:
if ([path isEqualToString:@"/getPhotos"]){
NSString *xmlList = [[NSString alloc] init];
MyServerMethods* myServerMethods = [[MyServerMethods alloc] init]; //First, we create an instance of MyServerMethods
xmlList = [myServerMethods getPhotos];
NSData* xmlData = [xmlList dataUsingEncoding:NSUTF8StringEncoding];
HTTPDataResponse *xmlResponse = [[HTTPDataResponse alloc] initWithData:xmlData];
return xmlResponse;
}