2017-02-23 103 views
0

上傳之前,我會URLEncode的文件名,所以我的網址是Onedrive業務上傳API:帶有空格的文件名變爲+

https://xxx-my.sharepoint.com/_api/v2.0/drive/items/root:/test+test.txt:/content當我上傳的測試test.txt文件名爲

但這API ISN沒有辦法處理這件事。

onedrive API: https://api.onedrive.com/v1.0/drive/items/root:/test+test.txt:/content可以正確運行

我如何能保持準確的文件名與PHP

+0

如果我沒有urlencode,我的服務器返回400錯誤(無效的URL) –

回答

0

+是,只要是空間的編碼格式的棘手人物。我相信它在技術上只在查詢字符串中合法,並且對路徑組件中的空間進行編碼的預期方式是使用%20。如果您使用百分比編碼版本,您將從消費者和企業中獲得相同的行爲,而您發現+編碼僅適用於您對消費者的需求(儘管它應該顯然是有爭議的)。

+0

我按照RFC 3986標準對URL進行編碼解決了這個問題 –