【问题标题】:How to upload a document to web api with Ajax, without using html User Control or Form?如何使用 Ajax 将文档上传到 web api,而不使用 html 用户控件或表单?
【发布时间】:2016-09-13 16:27:54
【问题描述】:

无论我在哪里有上传文档的 UI,我都可以轻松地使用 FormData api 将异步上传到 web api。现在我有一个场景,我需要在不使用 UI 或用户输入的情况下根据文件路径上传文档,那么我该怎么做呢?

以下是我在用户上传表单文件时使用的代码。

    var formData = new FormData();
    var myFile = $('#myFile')[0];
    formData.append("myFile", myFile.files[0]);
    $.ajax({
        url: url,
        type: 'POST',
        data: formData,
        contentType: false,
        processData: false,
        success: function (data, textStatus, xhr) {
            console.log(data);
        },
        error: function (xhr, ajaxOptions, rtnError) {
            alert(xhr.responseText + rtnError);
        }
    });

【问题讨论】:

  • 我不认为你可以在没有他们许可的情况下访问用户机器。它们必须是某种用户交互。

标签: javascript ajax asp.net-mvc html asp.net-web-api2


【解决方案1】:

一般您无法在浏览器中使用 JavaScript 直接访问客户端文件系统(这是设计使然),因此您需要用户手动选择文件才能上传它。

这个问题可能会进一步阐明在 JavaScript 中操作文件的限制:Local file access with javascript

【讨论】:

  • 谢谢!我只是在想是否有办法操纵它。现在,我最终从服务器端调用 web api!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-04-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-04-11
  • 1970-01-01
相关资源
最近更新 更多