当前位置: 首页 > 知识库问答 >
问题:

亚马逊文本开始文档分析-来自SQS的消息都是空的,

钱黎明
2023-03-14

你好,我正在Java开发一个应用程序,使用AWS文本解析文档。对于多页解析,我使用了在文本客户端上可用的starDocumentAnalysis方法。这个客户端然后用一个jobId响应,jobId和它的完成状态一起被放在sqs队列上。我以前有一个个人帐户,并设法让所有的工作,所以一个进程从队列中读取消息,然后使用以下方法获得解析的结果:

GetDocumentAnalysisRequest documentAnalysisRequest = GetDocumentAnalysisRequest.builder().jobId(jobId)
                    .maxResults(maxResults).nextToken(paginationToken).build();

现在,我必须在我公司的AWS帐户上执行此操作,我已经返回了我的步骤,所有操作都正常,但现在,当我从队列中提取消息时,所有消息都返回为[],即空数组。我使用以下代码:

messages = sqsClient.receiveMessage(receiveMessageRequest).messages();

所以我知道错误不可能出现在java代码中,因为以前它是有效的。我还知道我可以上传到新的bucket,也可以进行单页解析,所以我知道我的凭证是正确的。我已经在sns上创建了一个主题,并向它注册了我的sqs,但这里的某个地方肯定有权限或其他配置错误。也许SNS和SQS没有相互交谈?

不知道是否有人有什么见解可以帮助我。非常感谢。

共有1个答案

郭星文
2023-03-14

我找到了答案。这一切都与SNS主题的命名约定有关。在留档中解释:

https://docs.aws.amazon.com/textract/latest/dg/api-async-roles.html

第3步-创建亚马逊SNS主题。在主题名称前面加上AmazonExtract。请注意主题Amazon资源名称(ARN)。确保主题与您使用的AWSendpoint位于同一区域。

 类似资料:
  • 脚本: 弹性beanstalk环境有几个web服务器,这些服务器向另一个工作环境发送用户注册请求等。 问题: 当其中一台工作机器完成任务时,我还希望它向web服务器发送确认信息。 SQS似乎没有"确认"消息。 当我们卸载一个发送电子邮件的任务时,我也想让网络服务器知道发送电子邮件是成功的。 我可以做的一个解决方案是实现web服务器轮询的另一个队列,但是,许多服务器可以在同一个队列上轮询,服务器2可

  • 我正在使用Amazon Textract的StartDocumentAnalysis函数异步扫描文件。S3存储桶中的pdf文件。正如文档所说,我应该会收到一份关于工作状态的通知,发送到提供的SNS主题。 返回用于获取操作结果的作业标识符(JobId)。当文本分析完成后,亚马逊文本将完成状态发布到您在中指定的亚马逊简单通知服务(Amazon SNS)主题。 我用来开始分析的代码如下: 我在AWS控制

  • 亚马逊云 图 1.20.2.1 - AWS AWS,即 Amazon Web Services,是亚马逊(Amazon)公司的 IaaS 和 PaaS 平台服务。AWS 提供了一整套基础设施和应用程序服务,使用户几乎能够在云中运行一切应用程序:从企业应用程序和大数据项目,到社交游戏和移动应用程序。AWS 面向用户提供包括弹性计算、存储、数据库、应用程序在内的一整套云计算服务,能够帮助企业降低 IT

  • 我正在使用现有服务为Alexa Echo创建一项定制技能 这项服务有很多功能,但用途不同<我希望我的技能能为所有这些功能服务 所有服务都是HTTPS POST服务,它接受JSON原始正文请求并以JSON格式提供结果 第一季度。我可以像单独的意图一样使用我的技能中的每个功能吗 Q2。我应该使用Lambda还是直接点击我的服务 Q3。如果使用Lambda,我可以构造所需的有效负载并发送到我的服务,获取

  • 对不起.我又加了一些内容。我在Spring中测试了两个消息队列(rabbitmq、amazon sqs),如下所示。 我的目的是逻辑处理用户电子邮件到队列发送注册完成电子邮件时,用户完成注册无一例外。 但是,上面的逻辑发生RuntimeException。 有人知道这是为什么吗?

  • Building a company? You've got one very important decision to make, because it affects everything else you do. No matter what else you do, you absolutely must figure out which camp you're in, and gear