上传传递formdata变量到handler.ashx

本文关键字:handler ashx formdata 变量 | 更新日期: 2023-09-27 18:17:56

我正试图从我的。aspx页面发送参数到我的处理程序。当我上传文件时,使用。net和c#在"formdata"的帮助下进行上传。参数取自具有值的文本框。代码是:

 <script type = "text/javascript">
     $(document).ready(function() {
         $("#<%=FileUpload1.ClientID %>").uploadify({
             'swf': 'Scripts/uploadify.swf',
             'uploader': 'Handler.ashx',
             'auto': true,
             'multi': true,
             'buttonText': 'Select File(s)',
             'removeCompleted' : false,
             'fileTypeDesc' : 'PDF Files',
    'fileTypeExts' : '*.pdf',
    'formData' : { "id": "<%=TBcustnom.Text %>", "pwd": "<%=Pwd.Text %>" }

         });
     });

处理程序。Ashx只接收第一个值(id),而不接收PWD部分的内容。

string id = context.Request["id"]; 
string pwd = context.Request["pwd"];

我如何配置javascript发送两个参数?或者如何配置处理程序。Ashx也会收到残疾通知书吗?

上传传递formdata变量到handler.ashx

var data = {};
data.id = <%TBcustnom.Text %>;
data.pwd = <%Pwd.Text %>;
$(document).ready(function () {
    $("#<%=FileUpload1.ClientID %>").uploadify({
        'swf': 'Scripts/uploadify.swf',
        'uploader': 'Handler.ashx',
        'auto': true,
        'multi': true,
        'buttonText': 'Select File(s)',
        'removeCompleted': false,
        'fileTypeDesc': 'PDF Files',
        'fileTypeExts': '*.pdf',
        'formData': obj: JSON.stringify(data)
    });
});

在服务器端,

var jsonString = context.Request["obj"];
var serializer = new JavaScriptSerializer();
var jsonObjects = serializer.Deserialize<Dictionary<string, string>>(jsonString);

我唯一需要做的就是看正确的地方。

string id = context.Request["id"]; 
string pwd = context.Request["pwd"];

这应该是

string id = context.Request.Form[1]; 
string pwd = context.Request.Form[2];

保重!