Как скачать файл LiveLink (OpenText) с помощью REST API и .Net (C#/VB)

Использование LiveLink Server 16.2.9 (2019-06), сборка 851

Это код, который я использую для загрузки файла LiveLink с именем Active_Time.xlsx. Если я вставлю ссылку ниже в браузере, то файл скачается. Однако при использовании этого кода результатом является небольшой файл XML (см. внизу)

Dim remoteUri As String = "https://OurServer.com/livelink/livelink.exe?func=ll&objId=33100345&objAction=download"

Using client = New Net.WebClient()
      client.Credentials = New Net.NetworkCredential(username, password, domain)
      client.DownloadFile(remoteUri, "C:\temp\Active_Time.xlsx)           
      Console.WriteLine("File extracted.")
      client.Dispose()
    End Using

Что-то загружается, но не тот файл Excel, который я ожидал. Это то, что я получаю, если я редактирую файл с помощью Блокнота.

<!DOCTYPE html>
<html lang="en">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <script src="./jquery.min.js?v=16.6.0.2315"></script>
    <script src="./login1/getfragment.js?v=16.6.0.2315"></script>
</head>
<body>
<noscript>
    <p><strong>Note:</strong>Since your browser does not support Javascript, you must press the Continue button once to proceed.</p>
</noscript>
<form action="login" method="get">
<div>

    <input type="hidden" name="RFA" value="eyJhbGciOiJub25lIn0.eyJwb3N0VGlja2V0Ijp0cnVlLCJwb3N0UGFyYW1zIjp0cnVlLCJsb2dvblN0eWxlIjoic2lnbmluLWNzIiwidXhWZXJzaW9uIjoxLCJmb3J3YXJkQWRkcmVzcyI6Imh0dHBzOi8vY2Rtcy50YXMtY2FuLmNvbS9saXZlbGluay9saXZlbGluay5leGU_ZnVuYz1vdGRzaW50ZWdyYXRpb24ucmVkaXJlY3QmTmV4dFVSTD1odHRwcyUzQSUyRiUyRmNkbXMlMkV0YXMlMkRjYW4lMkVjb20lMkZsaXZlbGluayUyRmxpdmVsaW5rJTJFZXhlJTNGZnVuYyUzRGxsJTI2b2JqSWQlM0QzMzY1MjI3MSUyNm9iakFjdGlvbiUzRGRvd25sb2FkJTI2bmV4dHVybCUzRCUyNTJGbGl2ZWxpbmslMjUyRmxpdmVsaW5rJTJFZXhlJTI1M0ZmdW5jJTI1M0RsbCUyNTI2b2JqSWQlMjUzRDMzMTQwMzE1JTI1MjZvYmpBY3Rpb24lMjUzRGJyb3dzZSUyNTI2bG9nU3RvcENvbmRpdGlvbklEJTI1M0QxMTYwODAxXzEzOTA1Mzg5MF8xX2xvYyIsInJlc291cmNlSUQiOiIxYTEzYzg2Mi0zZGY2LTRhNGYtYWU3MC1kYThhNmY0ZGI4YzIifQ">

    <input type="hidden" name="fragment" id="fragment">
</div>
<noscript>
    <div><input type="submit" value="Continue"></div>
</noscript>
</form>
</body>


person User 123    schedule 19.11.2019    source источник


Ответы (1)


Похоже, вы не авторизованы? Вы должны использовать остальные API.

Пример

https://<server.ext>/<livelink-root>/api/v2/nodes/2000
person Steffen Roller    schedule 20.11.2019
comment
Вы имеете в виду использование этого URL-адреса: OurServer.com/api/v2/node/301832? Я получаю Удаленный сервер вернул ошибку: (404) Не найдено. Посоветуйте, как создать URL-адрес с помощью /api/v2/node/.? - person User 123; 20.11.2019
comment
Я отредактировал свой ответ. Вам также потребуется лицензия SDK. Там вы найдете все остальные звонки. - person Steffen Roller; 20.11.2019
comment
Не уверен насчет лицензии SDK, все работало отлично до прошлой недели, когда они обновили сервер LiveLink. До этого я загружал файл, используя этот URL, и он всегда работал: https://OurServer.com/csdav/nodes/33140315 - person User 123; 20.11.2019
comment
Может быть, я могу изменить это выше, используя api/v2/nodes? - person User 123; 20.11.2019
comment
вы можете попробовать это: https://OurServer.com/livelink/livelink.exe/api/v2/nodes/301832 - person Steffen Roller; 20.11.2019
comment
Это URL-адрес после входа в систему https://wtrs.taw-tpp.com/livelink/livelink.exe?func=llworkspace - person User 123; 20.11.2019
comment
Я попробовал предложенный вами URL-адрес, и теперь я получаю Удаленный сервер вернул ошибку: (401) Неавторизованный. - person User 123; 20.11.2019
comment
сначала вам нужно получить токен аутентификации. Выполните POST для ../api/v1/auth с именем пользователя=xxx&password=xxx. Сохраните файл cookie для следующих вызовов. - person Steffen Roller; 20.11.2019
comment
Давайте продолжим обсуждение в чате. - person Steffen Roller; 20.11.2019
comment
Только что открыл чат - person User 123; 20.11.2019