您好我正在开发一个使用 AWS Textract 解析文档的 Java 应用程序。对于多页解析,我使用 textract 客户端上可用的 startDocumentAnalysis 方法。然后,该客户端以一个 jobId 进行响应,并且 jobId 连同它的完成状态一起被放置在 sqs 队列中。我以前有一个个人帐户并设法让所有这些都正常工作,因此一个进程从队列中读取消息,然后使用以下方法获取解析结果:
GetDocumentAnalysisRequest documentAnalysisRequest = GetDocumentAnalysisRequest.builder().jobId(jobId)
.maxResults(maxResults).nextToken(paginationToken).build();
现在我必须在我公司的 AWS 帐户上执行此操作,并且我已经追溯了我的步骤并且一切正常,除了现在当我从队列中提取消息时,所有消息都以 [] 即空数组返回。我使用这段代码:
messages = sqsClient.receiveMessage(receiveMessageRequest).messages();
所以我知道错误不能出现在java代码中,因为以前它有效。我也知道我可以上传到新存储桶并进行单页解析,所以我知道我的凭据是正确的。我在 sns 上创建了一个主题并将我的 sqs 注册到它,但是这里的某个地方必须存在权限或其他配置错误。也许 SNS 和 SQS 没有互相交谈?
想知道是否有人有任何可以帮助我的见解。谢谢