【问题标题】:How to correctly append form-data files如何正确附加表单数据文件
【发布时间】:2021-01-17 18:37:21
【问题描述】:

我无法在 Javascript 中运行 ExtractTable 的 API。更确切地说,当我尝试执行 HTTP POST 来触发作业时,就会出现问题。

API 文档:https://documenter.getpostman.com/view/6396033/SVfMS9xu

我正在使用下面的代码:

var FormData = require('form-data');
var XMLHttpRequest = require("xmlhttprequest").XMLHttpRequest;

var data = new FormData();
data.append("input", fileInput.files[0], "myImg.png");
data.append("dup_check", "False");

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function() {
  if(this.readyState === 4) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://trigger.extracttable.com");
xhr.setRequestHeader("x-api-key", "<myAPIkey>");

xhr.send(data);

我的错误信息是这样的:“ReferenceError: fileInput is not defined”。

关于我需要做什么或修复什么才能运行上述代码有什么想法吗?

【问题讨论】:

    标签: javascript post xmlhttprequest form-data


    【解决方案1】:
    data.append("input", fileInput.files[0], "myImg.png");
    

    您正在使用 fileInput.files[0] 变量,但它在您的代码中定义在哪里?

    而你试图在索引 0 处访问fileInput.files,也许这个索引不存在?

    【讨论】:

    • 你是对的,谢谢。我仍然坚持这一点,想知道您是否知道是否可以将本地文件附加到 formData。我的问题类似于这个未回答的问题:stackoverflow.com/questions/61489137/…
    猜你喜欢
    • 2016-04-29
    • 1970-01-01
    • 1970-01-01
    • 2012-01-06
    • 1970-01-01
    • 2016-04-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多