如何使用SharePoint网络服务获取文档的Internet media type?我使用SOAP访问服务。我已经尝试了Content Types文档,但它与Conten-type / Internet media-type / MIME不同。
答案 0 :(得分:3)
SharePoint不了解MIME类型。至少它不会在每个文件的基础上知道这一点。
查看表示SharePoint中文件的SPFile
。最接近的是SPFile.ProgID
:“获取一个字符串,用于标识创建文件的应用程序。”,但这与MIME类型不对应,也不是它总是充满。
MIME类型实际上由 IIS Web服务器分配,如您在此说明中所示:
因此,您将无法通过查询SOAP Web服务来获取mime类型。您唯一的机会是下载相关文件并检查 HTTP标头,您应在其中找到IIS分配的Content-Type
。
您将无法按内容类型或类似内容进行查询,您将不得不使用文件扩展名(例如xlsx,docx) - IIS没有做任何不同的事情,它通过文件扩展名分配MIME类型。因此,不是试图获取mime类型,而是可以更容易地获取文件扩展名并从那里扣除mime类型。
最后:SharePoint内容类型是SharePoint内部构造。它表示SharePoint中的不同类型的内容,并不总是与可下载文档相关。它与mime-types无关。
答案 1 :(得分:1)
如果是服务器端代码,您可以使用:
SPUtility.GetMimeTypeFromExtension(".pdf")