问题描述
我在尝试将 PDF 文件发送到 Microsoft 的表单识别器服务时遇到了一些问题。
我需要发送 PDF 文件,而不是发送 PDF Url 位置。根据我的经验,可以使用 base64 发送文件,但似乎 Microsoft 服务与 base64 格式不兼容。每当我尝试发送文件时,服务器都会响应:
{ “错误”: { “代码”:“1000”, "message": "无效的输入文件。" } }
我需要知道如何将我的 PDF 转换为所需的应用程序/pdf“二进制 PDF 数据”。我找不到任何与此转换相关的文档。
谢谢!
解决方法
不支持 base64 编码的请求是正确的。
如果您使用 curl 并且想要发送本地文件,请运行以下命令:
curl -i https://{endpoint}/formrecognizer/v2.1-preview.3/custom/models/{modelId}/analyze -H 'Content-Type: application/pdf' \
-H 'Ocp-Apim-Subscription-Key: {subscription key}' --data-binary @/path/to/your/file.pdf
关键部分是 Content-Type
标头,它必须与支持的值匹配,以及 --data-binary
标志,它是本地 PDF 文件的路径。请务必包含 -i
标志,以便您可以在响应中看到 Operation-Location
标头,您可以在该标头中检索分析结果。
您可能还想查看 C#、Java、JavaScript 和 Python 的表单识别器 SDK。