【问题标题】:Receiving a 415 error when ingesting a document into Watson Discovery service将文档摄取到 Watson Discovery 服务时收到 415 错误
【发布时间】:2017-07-08 04:40:44
【问题描述】:

我正在尝试通过 Postman 将文档 POST 到 Watson 的 Discovery 服务。无论我尝试哪种文档,它都会给我以下不太有用的错误消息:

{
"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

正文包含二进制文件和标题中的凭据。

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

【问题讨论】:

    标签: watson-discovery


    【解决方案1】:

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

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

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

    2. 发送多部分表单时,您发送的文件,或者可能只是您为file 部分发送的Content-Type 标头,可能会被拒绝。 Watson Discovery 支持 HTML、JSON、PDF 和 Microsoft Word 文档。其他任何东西都会得到415 响应,包括如果发现没有正确猜测内容类型。 Discovery 使用文件名来帮助猜测内容类型。

    相关问题:

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

    【讨论】:

    • 我尝试了 PDF 和 Word 文件。我尝试上传的文件名为 ZSQ03011USEN.pdf 和 XBQ12358USEN.docx。就像我说的,他们在使用仪表板时都摄取得很好。我将尝试在标题中手动指定 mime/type。
    • 啊!好的。 另一个 Discovery 要求添加(或更新)一个文档是 overall HTTP POST 请求是一个多部分形式(准确地说:Content-Type: multipart/form-data; boundary=...)文件需要作为名为@9​​87654330@ 的部分发送该多部分表单请求中。 (我想我应该更新我的答案,说这样的话。)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-30
    • 1970-01-01
    • 2018-06-14
    • 2015-08-06
    相关资源
    最近更新 更多