Я ищу способ проверить, существует ли файл в SharePoint Online.
Наш исходный ресурс Sharepoint был перемещен в Sharepoint Online, поскольку мой код не работает.
Существующие рекомендации не работают. Я искал решение (Google) в течение нескольких недель безуспешно.
HTTPRequest всегда возвращает .Status="OK"
и .StatusText="200"
даже для файла, который не существует в папке SharePoint.
Приведенный ниже код показывает то, что я пробовал до сих пор (во многих комбинациях, но результат всегда один и тот же)
Sub Test_WinHTTPRequest()
Set HttpRequest = CreateObject("WinHttp.WinHttpRequest.5.1")
With HttpRequest
.Open "GET", "https://company.sharepoint.com/sites/wt-teams-CServices/WAN%20Fin/FY19-20/test_file.xlsx"
' .Open "GET", "http://company.sharepoint.com/sites/wt-teams-CServices/WAN%20Fin/FY19-20/test_file123.xlsx"
' .Open "GET", "http://company.sharepoint.com/sites/wt-teams-CServices/WAN Fin/FY19-20/test_file123.xlsx"
.Send
st = .Status
stt = .StatusText
rt = .ResponseText
End With
Debug.Print rt, st, stt
End Sub
Та же ситуация с объектом MSXML2.XMLHTTP60
Какое бы имя файла я ни использовал в URL, HTTPRequest всегда возвращает «URL существует». .ResponceText возвращает огромный вывод с некоторым кодом HTML, который в точности совпадает с любым именем файла, которое я использовал в URL.
В Inte rnet Explorer или Windows explorer, если я вставлю URL с существующее имя файла, возвращает ошибку, как я ожидал.