我正在使用 ASIHTTPRequest 包将一些数据从 iPhone 发送到我的服务器,然后当保存在服务器上时,我收到一个响应(一个字符串),其中包含我想在 webview 中加载的 url。理论上这应该很简单,但实际上我根本无法完成这项工作。我猜字符串的编码似乎有一些问题。如果我 NSLog 退出响应,它似乎完全没问题,但它只是拒绝在 webview 中加载。
这是我的要求(一直在玩压缩和编码):
NSURL *url = [NSURL URLWithString:@"xxx"];
ASIFormDataRequest *request = [[[ASIFormDataRequest alloc] initWithURL:url] autorelease];
[request setFile:imageData forKey:@"photo"];
[request setDelegate:self];
[request setDidFinishSelector:@selector(requestDone:)];
[request setDidFailSelector:@selector(requestWentWrong:)];
[request setAllowCompressedResponse:NO];
[request setDefaultResponseEncoding:NSUTF8StringEncoding];//NSISOLatin1StringEncoding
[request start];
这是我的回复:
- (void)requestDone:(ASIHTTPRequest *)request{
NSString *response = [request.responseString];
NSLog(@"web content: %@", response);
[webView loadSite:response];
}
NSLog 看起来不错,但网站不会加载。尝试发送一个 NSString 变量,如 NSString *temp = @" http://www.google.se "; 到 loadSite 函数并且工作正常,所以问题不在于加载本身。
在 obj-c 丛林中将大大增加任何指针或帮助:)
/F