如何读取/提取多部分/表单数据的内容

本文关键字:表单 数据 多部 提取 何读取 读取 | 更新日期: 2023-09-27 18:08:03

我正在接收包含图像和字符串的多部分/form-data,但我无法提取内容。

。下面的代码正在读取string内容,但它只在字符串首先附加在图像之前时读取,并且使用下面的代码(B)读取图像时不返回任何内容

string expenseid = context.Request["ExpenseID"];

B。下面的代码正在读取图像,但它只在首先添加图像时读取,并且读取带有上面代码(A)的字符串时不返回任何内容。

HttpPostedFile uploadedfile = context.Request.Files[0];
string ext = System.IO.Path.GetExtension(uploadedfile.FileName);

我想知道包含string和图像的multipart/form-data内容的正确阅读

如何读取/提取多部分/表单数据的内容

您需要发送一个文件和一些其他字段的脚本。

//Purpose: Form Submit: SAVE (Here the file plus form data is saved
        document.getElementById('frmPage').onsubmit = function (e) {
            debugger;
            var file = document.getElementById('fileToUpload').files[0];
            var filename;
            if (file) {
                filename = file.name;
            }
            else {
                filename = "";
            }
            $('#Image').val(filename);
            var formObj = $(this);
            var formURL = '@Url.Action("SaveMethod", "ControllerName")';
            var formData = new FormData(this);
            $.ajax({
                url: formURL,
                type: 'POST',
                data: formData,
                mimeType: "multipart/form-data",
                contentType: false,
                cache: false,
                processData: false,
                success: function (data, textStatus, jqXHR) {
                    debugger;
                    alert("Client saved successfully");
                },
                error: function (jqXHR, textStatus, errorThrown) {
                }
            });
            e.preventDefault(); //Prevent Default action.
        }

这是设计:

<div>
                            <form id="frmPage" class="form-horizontal">
                                <div class="form-body">
                                    <div class="form-group">
                                        <label id="lblImage" class="col-md-3 control-label">Upload File</label>
                                        <div class="col-md-4">
                                            <input type="file" id="fileToUpload" name="file" />
                                        </div>
                                    </div>

                                <div class="modal-footer" style="margin-top: 0px">
                                    <div class="pull-right">
                                        <button type="submit" id="btnSave" class="btn blue Save">Save</button>
                                    </div>
                                </div>
                            </form>
                        </div>

此处:btnSave是提交类型,因此它将提交特定的表单。和名为frpage的表单将执行我们添加的jquery脚本。这将保存文件和页面数据。