首页 > 解决方案 > TextRact 响应状态码不表示成功:400(错误请求)+ IAM Ke​​ys not found

问题描述

我已经在登台服务器上推送了我的文本代码,现在我收到一个错误。

它正在开发一个开发系统。我不明白为什么会这样。

我正在使用 dotnet core 3.0

我正在关注此处提供的代码示例。[https://github.com/aws-samples/amazon-textract-code-samples/tree/master/src-csharp]

我对 IAM 凭证有疑问。为此,我在登台服务器上安装了适用于 Windows 和 AWS CLI 的 AWS 开发工具包工具,然后运行命令(此处提到 [https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-configure .html#cli-quick-configuration] ) 使用命令提示符进行配置。我认为它(IAM)可能会被保存到环境中。但没有成功。

在 S3 存储桶上上传文件的代码正在上传它,但是在向 Textract 服务发出请求时,它正在崩溃。

System.Net.Http.HttpRequestException:响应状态码不表示成功:400(错误请求)

我不明白是什么问题。在开发方面,它正在发挥作用。有什么帮助吗?

标签: amazon-web-services.net-coreamazon-textract

解决方案


最后我们找到了解决方案。这是一个非常奇怪的问题,从没想过它会来。

第一件事

API 抛出的消息不清楚。因此,我们将它托管在其他一些已升级 Windows 操作系统的服务器上。在那里我们知道它与创建 IAM 用户期间生成的密钥有关。

第二件事

尽管我们清楚我们的应用程序(亚马逊的 Textract dll)无法读取我们从此处配置的密钥。

当我们通过 CLI 进行配置时,它会创建两个文件用于保存凭据并从此处读取。请参阅下面的屏幕截图。

在此处输入图像描述

它在那里,但应用程序仍然无法在登台服务器上找到它。在搜索了 4-5 天后,与 AWS 支持人员交谈什么也没发生。

最后,我们深入研究了 IIS,做了一些更改,然后才知道它正在 IIS 上发生。在 IIS 中,在实例的 Appool 中有设置它是加载用户配置文件。. 默认情况下它是假的,但是当我们变成真时它会创建一个用户,就像我们有用户用于系统登录一样。请参阅下面的屏幕截图以更改此设置。

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

它像这样创建用户。

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

希望它可以帮助某人


推荐阅读