GetFileByServerRelativeUrl不适用于特殊字符

问题描述

我正在使用Python从SharePoint下载excel文件。一切正常,除非excel文件具有特殊字符。下面两个URL供参考。我正在使用URL编码(导入urllib),并且对所有URL都可以正常工作,但文件具有特殊字符除外。对做什么有任何想法吗?

     working fine
    _api/web/GetFileByServerRelativeUrl('/sites/11/Documents/C%20F%20D/R%20C%20F%2020200501%20-%20Tecks%20comment.xlsm')/$value
     
     Not working 

    _api/web/GetFileByServerRelativeUrl('/sites/11/Documents/C%20F%20D/K%20%27%20%27%20-%20%27test.xlsm?')/$value')
    file name is -K ' ' - 'test.xlsm

解决方法

您需要对所有特殊字符进行编码,然后使用其余的字符:

/_api/Web/GetFileByServerRelativePath(decodedurl='/sites/dev/Doc/%2520sdff%5E%253d654fd.xlsx')

我的文件名为:%20sdff^%3d654fd.xlsx