1

我正在创建一个扩展,通过使用他们提供的 REST API 来自动化 Codenvy 中的过程。但是,我在处理 multipart/form-data POST 请求时遇到了问题。具体来说,创建一个新工厂。

这是我的 ajax/jquery 调用:

$.ajax({
    type: 'POST',
    url: 'https://codenvy.com/api/factory',
    data: formData,
    processData: false,
    contentType: false,
    success:function(data) {
      callback();
    },
    error:function(e) {
      console.log(e);
    }
  });

但我收到一条 409 错误消息:

在 multipart/form-data 的“factoryURL”部分中找不到工厂 URL 信息

我已经在 Codenvy 论坛上发帖了,但我得到的唯一有用的东西是 curl 命令

POST http://domain.com/api/factory?token= $token -H 'Content-Type: multipart/form-data' -F 'factoryUrl={$JSONofFactoryConfig}'

rfc2388说了一些关于名称字段的内容,但我不知道如何将 curl 名称字段转换为 ajax 请求。

我应该如何将这个“factoryUrl”字段添加到我的 POST 请求中?

4

2 回答 2

0

看起来您的有效负载中缺少 factoryUrl。它应该是:

factoryUrl={json_with_project_config}
于 2015-08-10T10:07:56.390 回答
0

我解决了这个问题。我知道我的有效载荷中缺少 factoryUrl 部分,我只是不知道如何将它放入我的有效载荷中。以下代码完成了这项工作。

var formData = newFormData();
formData.append('factoryUrl', JSON.stringify(jsonObject));
// Send ajax post request
于 2015-08-10T18:46:04.493 回答