Я использую C# и CSOM и хотел бы достичь цели для сайта SharePoint Online с помощью следующих шагов:
получить list_id
по заданному имени списка (этот шаг очень прост с CSOM)
используйте list_id
для доступа к странице: https://{domain}.sharepoint.com/_layouts/15/listedit.aspx?List={list_id}
(страница настройки списка в соответствии с идентификатором списка)
захватить всю страницу HTML содержимое, затем выполнить некоторые дальнейшие операции GET / POST
Моя проблема: я застрял на шаге 2 и 3, не могу Войдите на сайт SharePoint Online программным способом и сохраните контекст сеанса для дальнейших последовательных операций GET / POST.
на самом деле я уже сделал это на нескольких сайтах SharePoint OnPerm успешно, используя var httpClient = new HttpClient(new HttpClientHandler{Credentials = new NetworkCredential(username, password)})
, затем используйте эту HttpClient
для входа на сайт OnPerm и удерживайте контекст входа для дальнейших запросов GET / POST
Мое намерение использовать SharePoint Online такое же, как указано выше, с указанными string site
, string username
и SecureString password
, чтобы войти на сайт SharePoint Online и выполнить GET / POST программно.
В настоящее время я просто использую SharePointOnlineCredentials
для замены NetworkCredential
, чтобы получить HttpClient
для входа в систему, но только получить ошибки 401 и 502.