Пользовательские серверы WebDAV и проводник windows - PullRequest
1 голос
/ 28 января 2020

Я пытаюсь заставить windows проводник общаться с моим экземпляром webdav, я создал, как мне кажется, правильный ответ PROPFIND, но в командной строке, когда я запускаю ...

net использовать x: https://example.com/Some/Root/Path/

... он грохнулся с ...

Произошла системная ошибка 67.

Не удается найти сетевое имя.

Это происходит независимо от того, действителен сертификат SSL или нет, при правильном развертывании сервера и локальном использовании localhost (для отладки процесса с помощью VS).

Я использую. Net Core 2.2 (в случае, если это имеет значение), и сейчас ничего из этого "не требует" аутентификации, но я намерен добавить это, как только получу базовый c жизненный цикл запроса работает.

Ответ PROPFIND выглядит следующим образом ...

<?xml version="1.0" encoding="utf-8"?>
<d:multistatus xmlns:d="DAV:">
    <d:response>
        <d:href>https://localhost:44313/Core/App(1)/WebDav/data</d:href>
        <d:propstat>
            <d:prop>
                <d:id>e08c9a0a-4728-41f4-909b-08d71b3f7bc2</d:id>
                <d:name>Data</d:name>
                <d:type>Folder</d:type>
                <d:resourcetype>
                    <d:collection />
                </d:resourcetype>
            </d:prop>
            <d:status>HTTP/1.1 200 OK</d:status>
        </d:propstat>
    </d:response>
    <d:response>
        <d:href>https://localhost:44313/Core/App(1)/WebDav/scripts</d:href>
        <d:propstat>
            <d:prop>
                <d:id>56b353ad-78ba-4ea6-5dc4-08d72181c00c</d:id>
                <d:name>Scripts</d:name>
                <d:type>Folder</d:type>
                <d:resourcetype>
                    <d:collection />
                </d:resourcetype>
            </d:prop>
            <d:status>HTTP/1.1 200 OK</d:status>
        </d:propstat>
    </d:response>
    <d:response>
        <d:href>https://localhost:44313/Core/App(1)/WebDav/icons</d:href>
        <d:propstat>
            <d:prop>
                <d:id>1959b510-b27a-4636-2f54-08d7427b8307</d:id>
                <d:name>Icons</d:name>
                <d:type>Folder</d:type>
                <d:resourcetype>
                    <d:collection />
                </d:resourcetype>
            </d:prop>
            <d:status>HTTP/1.1 200 OK</d:status>
        </d:propstat>
    </d:response>
    <d:response>
        <d:href>https://localhost:44313/Core/App(1)/WebDav/content</d:href>
        <d:propstat>
            <d:prop>
                <d:id>d8c9a4fc-fb5d-461d-d4ee-08d74bdb2d3d</d:id>
                <d:name>Content</d:name>
                <d:type>Folder</d:type>
                <d:resourcetype>
                    <d:collection />
                </d:resourcetype>
            </d:prop>
            <d:status>HTTP/1.1 200 OK</d:status>
        </d:propstat>
    </d:response>
    <d:response>
        <d:href>https://localhost:44313/Core/App(1)/WebDav/documentation</d:href>
        <d:propstat>
            <d:prop>
                <d:id>9e383261-831f-4f75-a62e-08d7725c8272</d:id>
                <d:name>Documentation</d:name>
                <d:type>Folder</d:type>
                <d:resourcetype>
                    <d:collection />
                </d:resourcetype>
            </d:prop>
            <d:status>HTTP/1.1 200 OK</d:status>
        </d:propstat>
    </d:response>
    <d:response>
        <d:href>https://localhost:44313/Core/App(1)/WebDav/test</d:href>
        <d:propstat>
            <d:prop>
                <d:id>771b935d-7ad8-4262-ea25-08d79901323d</d:id>
                <d:name>TEST</d:name>
                <d:type>Folder</d:type>
                <d:resourcetype>
                    <d:collection />
                </d:resourcetype>
            </d:prop>
            <d:status>HTTP/1.1 200 OK</d:status>
        </d:propstat>
    </d:response>
    <d:response>
        <d:href>https://localhost:44313/Core/App(1)/WebDav/testingfiles2001020</d:href>
        <d:propstat>
            <d:prop>
                <d:id>475f4d08-86d4-46f6-692f-08d79d955806</d:id>
                <d:name>TestingFiles2001020</d:name>
                <d:type>Folder</d:type>
                <d:resourcetype>
                    <d:collection />
                </d:resourcetype>
            </d:prop>
            <d:status>HTTP/1.1 200 OK</d:status>
        </d:propstat>
    </d:response>
</d:multistatus>
...