对于iPhone应用程序,我正在使用URL下载文件:
从这种类型的网址:: http://xxxxxxxxxxxxxxxxxxx.com/xxxxxxx//xxx/ipad.html?operation=getFile&contentId=61768b16-6b44-4d0b-bdcf-d10107d1f328
我正在从服务器下载文件,但它可能是.pdf或.docx或.doc
有没有办法从 url 识别文件类型?
不,由于文件名不在 URL 中,因此您无法做出假设。
但是在您收到 URL 的标头后,他们可能会告诉您您将收到哪种文件。
在下面的NSURLConnectionDelegate方法
中- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response {
NSString *mimeType = [response MIMEType]
NString *suggestedFilename = [response suggestedFilename];
}
当然,只有当您从服务器获取它们时,它才有效。
您提供的 URL 中没有类型指示,即使 URL 确实指定了某种类型的文件(例如 http://foo.com/bar.pdf
) 不能保证服务器实际上会返回 PDF 文件。
如果您不想下载文件,您可以随时发出 HEAD 请求以仅获取 HTTP 标头并查看Content-Type
标头的值。或者,您可以在请求中放置一个 Accept
标头,以限制对特定类型数据的响应。