如何查看formdata对象数据

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何查看formdata对象数据相关的知识,希望对你有一定的参考价值。

参考技术A action接收jsp传来的值,主要的方式是将数据放在request对象中,然后在另一个页面拿到这个数据即可,代码如下: A.jsp :通过post 和get、连接都可以传 a标签连接的: 传递到B页面 B.jsp : B页面通过如下代码接收本回答被提问者采纳

如何在 javascript 中的 FormData 中附加对象?

【中文标题】如何在 javascript 中的 FormData 中附加对象?【英文标题】:How to append objects in FormData in javascript? 【发布时间】:2019-11-26 03:14:45 【问题描述】:

我们需要通过将数据附加到 javascript 中的 formdata 中来将数据发送到服务器。在 javascript 中,我们有如下处理方式。

var ajax = new XMLHttpRequest();
ajax.open("POST", url, true);
var formData = new FormData();
var obj = url: "uploadUrl",type: 'POST', mode: true;
formData.append('myData', JSON.stringify(obj));
ajax.send(formData);

在服务器端,我们有如下方法。

 public void Save(MyModel args) 
     ....
    


    public class MyModel
    

        public MyObj myData  get; set; 

    
    public class MyObj
    
        public string url  get; set; 
        public string type  get; set; 
        public bool mode  get; set; 
    

args.myData 始终接收为 null。这里如何接收客户端发来的这种格式的数据?提出您的想法。

【问题讨论】:

附加每个键/值对 从提供的代码中,您没有将表单数据附加到 xmlhttprequest 对象。 @Dimitar,我没有提到这一点,但这不是我们这边的问题。 您的ajax.open 看起来仍然错误(请参阅我的回答):这只是这里的另一个错误吗?您是否检查了网络流量以查看问题出在客户端还是服务器端? @KarthikRavichandran,你错过了你作为“服务器端”的东西。 MVC,Web Api,还有什么?请提供所有必要的信息,以便人们可以帮助您。 【参考方案1】:

您需要明确发送formData:

var ajax = new XMLHttpRequest();
ajax.open('POST', url, true);
var formData = new FormData();
var obj = url: "uploadUrl",type: 'POST', mode: true;
formData.append('myData', obj);
ajax.send(formData);

(请注意,我在 ajax.open 中修复了 arg 顺序,接收到的表单数据将类似于 [object Object] 但我认为 JSON.stringify() 应该是这里的解决方案 - 这取决于您的服务器如何解析表单数据)

【讨论】:

【参考方案2】:

在服务器代码中,将 args 的类型设置为 String 并检查您是否正在获取字符串化数据。 如果您得到它,请相应地解析数据以适应 MyModel。

提供更多服务器代码信息可能有助于我进一步研究。

编辑 1:可能也有帮助的链接

Reading file input from a multipart/form-data POST Are there any multipart/form-data parser in C# - (NO ASP)

【讨论】:

如果我们将参数类型设置为它正确接收的字符串。我们应该用强定义的类而不是字符串来改变类型吗?因为多个数据将被发送到服务器 能否提供参数(字符串数据)。 请查看可能对您有帮助的附加链接。

以上是关于如何查看formdata对象数据的主要内容,如果未能解决你的问题,请参考以下文章

Spring中如何通过form-data传输多文件数据

jquery 怎么获取formdata数据

如何在 javascript 中的 FormData 中附加对象?

c# 后台接收formdata对象

如何将 enctype 属性添加到 FormData() 对象?

如何使用ajax将包含上传文件和字符串的数据对象发送到控制器?