Я имею в виду Асинхронное чтение API-интерфейса , которое позволяет создавать задания чтения в SharePoint с использованием CSOM. Я могу успешно создать задание на чтение, но, к сожалению, оно долго находится в состоянии очереди.
Функция возвращает Объект , который включает UniqueJobID
, AzureContainerManifestUri
, AzureQueueReportUri
и EncryptionKey
Используя метод clientContext.Site.GetMigrationJobStatus
, я могу проверить состояние задания чтения, которое всегда возвращает Queued
Вот пример кода для справки:
using (var clientContext = new ClientContext(siteUrl))
{
clientContext.Credentials = new SharePointOnlineCredentials(userName, password);
var result = clientContext.Site.CreateSPAsyncReadJob($"{siteUrl}/List/MyList", new AsyncReadOptions { });
clientContext.ExecuteQuery();
MigrationJobState state;
do
{
var status = clientContext.Site.GetMigrationJobStatus(result[0].JobId);
clientContext.ExecuteQuery();
state = status.Value;
} while (state == MigrationJobState.Queued);
}
Я также попытался подключиться к очереди AzureQueueReportUri
, в которой содержится сообщение с зашифрованным содержимым. Я не уверен, как мы можем расшифровать контент, чтобы сделать его читаемым человеком. Вот пример сообщения:
{
"Label": "Encrypted",
"JobId": "079ece4a-cfd2-4676-a27d-2662beb5bb0a",
"IV": "RYc+ZA2feX1hnAcVWR1R+w==",
"Content": "qbjTBbb2N+DkNumLoCJSAAfwj8etDLgjxp+b2T9k03L9WfRJKlFBIZO457q+CbHA+8DHJS7VbPzVMoW6ybo2GxgteTYVP+yVUOPPvz57VGQJyzg2gss+Bsjn73GTWWUfwC/W+oWnEpt8PawZysCjSNf6A4HKZKewkskCshN/pND8ZpevrGt2qq0dTt0NkTIkuYv5AvIP7DSWjdl7nN/W5x4c2nR0sPFqKYom41a4tIqrruzwCDEEjWLFtuXAQ+UN2TMV9PWabRFe9n/P1RHrAJaNU+JjJiJm+lE1dQChz+7OuQoJsYnbjYTbqEE8CnIB0/E0zTrc3zLc6th8MBsKpZJjd31ovqr/Xez6zCnvMKotSdScFtTgQqHxmVDBMfMgi2mm8cKQpdKwRufP/YhaDQlvFkmj2FQN0KAMNxwFBh/MWCVhz5uCJ50CGhChcn4h"
}
Я также не могу подключить контейнер больших двоичных объектов AzureContainerManifestUri
. Сбой с ошибкой Authentication Error. Signature did not match.
Может кто-нибудь подсказать, как мне действовать дальше?