Ошибка HTTP 401 при доступе к WebDAV с клиентом Python - PullRequest
1 голос
/ 01 мая 2020

Я создал приложение Python, которое генерирует файл инвентаризации CSV, и я хочу загрузить этот файл в свой магазин через приложение BigCommerce WebDAV. Я использую следующий клиент Python для доступа к WebDAV.

https://pypi.org/project/webdavclient3/

Я могу получить доступ к своему магазину и добавить файлы в папку содержимого с помощью CyberDuck. , но я получаю ошибку HTTP 401, когда пытаюсь получить к ней доступ из скрипта Python. Вот то, что я использую для соединения с WebDAV.

# webDAV upload to BigCommerce
options = {
 'webdav_hostname': "https://mystore.com",
 'webdav_login': "email@email.com",
 'webdav_password': "password",
 'webdav_root': "/dav/",
}

client = Client(options)
print("Exist:", client.check("/content/mytest")) # returns "Exist: False"
print(client.list())
print(client.free())
print("HERE")

Я получаю сообщение об ошибке в client.list (), которое читает

Request to https://mystore.com/dav/ failed with code 401 and message: 
<?xml version="1.0" encoding="utf-8"?>
<d:error xmlns:d="DAV:" xmlns:s="http://sabredav.org/ns"><s:exception>Sabre\\DAV\\Exception\\NotAuthenticated</s:exception><s:message>No 'Authorization: Digest' header found. Either the client didn't send one, or the server is misconfigured</s:message>
</d:error>

Я предполагаю, что это говорит о моем имени входа и / или пароль неверный или нет аутентификации? Но почему я мог войти через CyberDuck с теми же учетными данными?

Я увидел кого-то, спрашивающего о подобной проблеме в следующей ссылке, и я попробовал предложения от Карен. Никто из них не работал.

https://support.bigcommerce.com/s/question/0D51B00004G4XfYSAV/unable-to-access-upload-files-or-create-directory-through-webdav-api

...