在我的应用程序中,当我向服务器发送请求时,我将获得 url 或 pdf 或图像作为响应,并基于此显示结果(url-> webview、image-> imageview 等)。但我不知道如何确定响应是 url 还是 pdf 还是图像?
请问有谁知道我怎么能做到这一点?
提前致谢!
在我的应用程序中,当我向服务器发送请求时,我将获得 url 或 pdf 或图像作为响应,并基于此显示结果(url-> webview、image-> imageview 等)。但我不知道如何确定响应是 url 还是 pdf 还是图像?
请问有谁知道我怎么能做到这一点?
提前致谢!
I would like to suggest you to use UIWebview for both case either it is PDF or image url from server.
[imgwebVw loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:strImgURL]]];
我假设您确实使用 NSURLConnection 来下载您的文件。所以,实现这个委托方法......
- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response
... 将响应转换为NSHTTPURLResponse并从allHeaderFields获取Content-Type值。
但这取决于您真正使用什么来下载文件。如果您确实使用了另一个类/框架/...,您就会明白。
如果你真的必须这样做,你可以阅读文件头,但我不建议这样做。这是我编写的用于获取远程图像大小的类别,您可以对其进行调整以检测文件是否确实是图像。你可以做类似的流解析来搜索 PDF Header: %PDF-1.0 等。否则你会认为它是一个 url。