2010-09-16 60 views
2

我使用新的Aurigma Image Uploader Flash控件,并且创建示例页面效果很好。但是,当我将此控件放到现有网站上的现有页面上时,它不起作用。我只能怀疑在母版页或页面上的其他东西搞乱了它。ASP.NET Request.Files在Flash控件回发中为空

我跟踪了这​​个问题 - Request.Files在请求进入时为空。但是,所有数据都在请求中发送。

为什么Request.Files无法正常工作?

这里的请求的提琴手跟踪的摘录:

POST http://localhost:15361/myaccount/placead/new.aspx?postFiles=1 HTTP/1.1 
Host: localhost:15361 
Connection: keep-alive 
Referer: http://localhost:15361/WebResource.axd?d=lAdTukuIRYXXlkVPS6yEQZdE0ZRhHxifFcDrPbzU_MDuk0OznXELaqd3rcUkbR18raDHqf4pWx6gUcGn391SmV3WbAt2TQUplpFdDsAU-K_ZPuSQ_dytDj992Foht1WO0&t=634202353399418554 
Content-Length: 891463 
x-preprocess-required: true 
cache-control: private 
pragma: private 
content-type: multipart/form-data; boundary=A2sVEJZF32a3OWPo7FdIFd7UvoVW5qc-jeV 
Accept: */* 
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/534.3 (KHTML, like Gecko) Chrome/6.0.472.53 Safari/534.3 
Accept-Encoding: gzip,deflate,sdch 
Accept-Language: en-US,en;q=0.8 
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3 
Cookie: visitorId=b48169a8-778b-4da3-b12b-086f308e0a52; ASP.NET_SessionId=axobxd21maqppku1xx4cde2i; .ASPXAUTH=329A2C36F151720E0274006500730074006200720065006500640065007200000027621FE6C855CB010127960117CD55CB01370064003900630032003500390039002D0032003300340066002D0034003000370064002D0038003600350030002D0034006500610066006400350061003400380036003200330000002F00000011365FF6DADD9A2FAF7EEE23AEE43EBC6; .NDPROLES=AAEAAAD_____AQAAAAAAAAAMAgAAAE1TeXN0ZW0uV2ViLCBWZXJzaW9uPTIuMC4wLjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQUBAAAAIVN5c3RlbS5XZWIuU2VjdXJpdHkuUm9sZVByaW5jaXBhbAcAAAAIX1ZlcnNpb24LX0V4cGlyZURhdGUKX0lzc3VlRGF0ZQ1fUHJvdmlkZXJOYW1lCV9Vc2VybmFtZRFfSXNSb2xlTGlzdENhY2hlZAlfQWxsUm9sZXMAAAABAQABCA0NAQIAAAABAAAAR92OOeQjzUhHqawI4CPNSAYDAAAAC1NxbFByb3ZpZGVyBgQAAAALdGVzdGJyZWVkZXIBBgUAAAApQWR2ZXJ0aXNlclVwZ3JhZGVkLEFydGljbGVzVXNlcixGb3J1bVVzZXIL0 
... 
... 
... 

--A2sVEJZF32a3OWPo7FdIFd7UvoVW5qc-jeV 
Content-Disposition: form-data; name="File0Width_0" 
Content-Type: text/plain; charset=UTF-8; Content-Transfer-Encoding: 8bit 

1028 
--A2sVEJZF32a3OWPo7FdIFd7UvoVW5qc-jeV 
Content-Disposition: form-data; name="File0Height_0" 
Content-Type: text/plain; charset=UTF-8; Content-Transfer-Encoding: 8bit 

744 
--A2sVEJZF32a3OWPo7FdIFd7UvoVW5qc-jeV 
Content-Disposition: form-data; name="File0Mode_0" 
Content-Type: text/plain; charset=UTF-8; Content-Transfer-Encoding: 8bit 

sourceFile 
--A2sVEJZF32a3OWPo7FdIFd7UvoVW5qc-jeV 
Content-Disposition: form-data; name="File0Name_0" 
Content-Type: text/plain; charset=UTF-8; Content-Transfer-Encoding: 8bit 

image001.png_Source0.png 
--A2sVEJZF32a3OWPo7FdIFd7UvoVW5qc-jeV 
Content-Disposition: form-data; name="File0_0"; filenam_="image001.png_Source0.png" 
Content-Type: image/png; charset=UTF-8; Content-Transfer-Encoding: binary 

�PNG 

��� (this goes on for a while with all the binary data...) 

回答

0

也许控制有文件上传事件或类似的东西?有些文件在其论据中。或者可能是一个包含文件的属性。

编辑:

<aur:ImageUploaderFlash ID="Uploader1" runat="server" 
OnFileUploaded="FileUploaded" 
OnAllFilesUploaded="AllFilesUploaded"> 

+0

是的,处理这些事件,因为这些文件的内容被设置不起作用为null 。这是最初的问题。我一直追溯到Request.Files对象作为根源(他们的控件使用Request.Files来获取输入流)。 – TheSoftwareJedi 2010-09-16 18:34:42

0

没有可以发布您的代码(以及它不同于样本),这是一个很难的事情来帮助你。

只是一般的一些事情,我想看看(可能会或可能不会帮助):

  1. <aur:ImageUploaderFlash ID="Uploader1" runat="server"/>是 不是里面<form runat="server"></form>标签在 代码中设置的,但控制要求是部分的WebForm。
  2. WebControl需要页面上的脚本管理器控件。
  3. 你有一个HttpModule以某种方式干扰。
1

Saving Uploaded Files in ASP.NET

Flash应用程序不允许自己为 标准POST请求领域 访问通过Request.Files 集合创建 发送文件。图片上传器Flash 绕过此限制上传 文件。但是,它会在服务器端检索这些文件 时导致一些 问题。附带 图片上传的Flash图片上传 闪存ASP.NET控件提供了几个 设施来解决这个问题...

相关问题