将文档摄取到 Watson Discovery 服务时收到 415 错误

Receiving a 415 error when ingesting a document into Watson Discovery service

我正在尝试通过 Postman POST 将文档发送到 Watson 的 Discovery 服务。无论我尝试哪种文档,它都会给我以下 not-so-helpful 错误消息:

{
"code": 415,
"error": "The request failed. Please try again."}

请求看起来像:

https://gateway.watsonplatform.net/discovery/api/v1/environments/7c83f310-0f3a-4ad0-bb71-5f260672cbca/collections/c0080236-aac1-405c-8111-322caa6b0b65/documents?version=2016-12-01

body 包含二进制文件和 header 中的凭据。

我可以通过 collection 仪表板上传这些文件,所以我一定是做错了什么。谁能告诉我这是什么?

HTTP 状态代码 415 标题为 不支持的媒体类型

有两个级别可以触发 Discovery 的 415

  1. Discovery 要求整个 HTTP POST 请求是多部分形式,当添加(或更新)文档时(准确地说:Content-Type: multipart/form-data; boundary=…)文件需要在该多部分表单请求中作为名为 file.

  2. 的部分发送
  3. 发送多部分表单时,您正在发送的文件,或者可能只是您为 file 部分发送的 Content-Type header,可以被拒绝。 Watson Discovery 支持 HTML、JSON、PDF 和 Microsoft Word 文档。其他任何内容都将获得 415 响应,包括 Discovery 未正确猜测内容类型的情况。 Discovery 使用文件名来帮助猜测内容类型。

相关问题:

  • 您是否将您的请求捆绑在 multipart/form-data 中?
  • 您要发送什么类型的文件?
  • 您要发送的文件的名称是什么?