【发布时间】:2019-05-17 05:40:49
【问题描述】:
我指的是Migration Asynchronous Read API,它允许使用 CSOM 在 SharePoint 上创建读取作业。我能够成功创建读取作业,但不幸的是,该作业长期以来一直处于队列状态。
该函数返回包含UniqueJobID、AzureContainerManifestUri、AzureQueueReportUri和EncryptionKey的Object
通过使用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 blob 容器。它失败并出现错误Authentication Error. Signature did not match.
谁能指导我如何继续前进?
【问题讨论】: