node.js - “请求具有不受支持的文档格式” - AWS Textract,使用 NodeJS
问题描述
我一直在尝试使用 AWS Textract(分析费用)在 AWS Lambda 中使用 NodeJS 14.x 和 AWS SDK 版本 2.966.0 制作算法。这是我写的代码:
const AWS = require("aws-sdk")
const textract = new AWS.Textract({apiVersion: '2018-06-27'});
exports.handler = async (event) => {
var params = {
Document: {
S3Object: {
Bucket: '(REDACTED)',
Name: 'test1.pdf'
}
}
};
try {
const data = await textract.analyzeExpense(params).promise();
return data;
} catch(e) {
return e;
}
};
我收到错误消息:
{
"message": "Request has unsupported document format",
"code": "UnsupportedDocumentException",
"time": "2021-08-11T22:07:59.913Z",
"requestId": "f61104c6-fba6-4d97-8f5d-e4a4491a610b",
"statusCode": 400,
"retryable": false,
"retryDelay": 62.83763773681126
}
我知道通过异步 API 支持 PDF(而 JPEG 和 PNG 使用同步 API),但这不是已经异步了吗?如果不是,我如何异步调用它,允许 textract 接受 PDF。
提前致谢。
解决方案
您收到错误是因为与 Amazon Textract 的同步操作不支持 PDF 格式。
目前,Analyze Expense 仅支持同步请求,链接到文档。
如果您需要使用 处理 PDF 文件AnalyzeExpense
,一种方法是将 PDF 拆分为多个.png
文件。
推荐阅读
- php - Laravel 验证数字
- javascript - 如何在 puppeteer 中获取 div 中的文本
- r - 错误预测自动绘图:强制不是从色彩空间导出的对象
- macos - 使用 pip3 在 Mac 上安装 importlib 时出现问题
- java - 如果时差以秒为单位,则日期格式化程序不反映正确的字符串
- xslt - 通过 XPath 提取元素节点的值?
- python-3.x - 如何在 ConfigArgParse 中进行多行列表?
- lodash - 使用 lodash 查找嵌套对象
- spring - 在MongoDB,JAVA Spring中使用多列搜索
- c++ - C++ KOALA 图形库 - 理解语法以访问数据结构