我遇到了一些烦人的事情。
我把图片上传到服务器了,没问题。 但是,当我尝试从服务器下载图像时,我想获取带有字符串变量的图像。这是我的 php 代码服务器端
....
echo "image_getting;";
$fullPath = $_POST['download_image'];
echo file_get_contents($fullPath);
....
如果我从服务器中删除第一行[请求响应数据]工作正常。 但是,我也想得到“image_getting;”因为我也在下载一些不同类型的。
如果我可以清除,iPhone 端 当我说
- (void)requestFinished:(ASIHTTPRequest *)request
{
NSString *responseString = [request responseString];
NSLog(@"%@",responseString);
NSArray *resultResponseArray = [responseString componentsSeparatedByString:@";"];
if([[resultResponseArray objectAtIndex:0] isEqualToString:@"image_getting"])
{
NSData *responseData = [request responseData];
UIImage * image = [UIImage imageWithData:aData];
.......
}
else if...
....
}
正如您所看到的,上面的响应数据也采用 echo“image_getting”,我如何拆分它。 我尝试转换和拆分它们,但没有成功。
我应该说,我对 php 很不好。
如果有人帮助我,我将不胜感激。 谢谢
编辑:解决方案 Php 端
header('X-Return: image_getting;');
$fullPath = $_POST['download_image'];
echo file_get_contents($fullPath);
iPhone端
NSLog(@"header %@",[[request responseHeaders] objectForKey:@"X-Return"]);
最佳答案
为什么不将“image_getting”放入响应的 HTTP header 中?这将使解析变得更加容易 - 然后您可以检索 header :
NSString *whatever = [[request responseHeaders] objectForKey:@"X-Whatever"];
然后[请求响应数据]将仅包含图像。
关于iPhone使用ASIHTTPRequest下载带有变量的图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8160534/