由于某热心人(保密保密)的帮助,把某一份大文件上传的代码调试成功,但遇到了一个很郁闷的问题...
由于本人是WIN 2003(IIS6),经过追踪得到HttpWorkerRequest request1 = this.GetWorkerRequest(application1.Context);
中request1的值为"System.Web.Hosting.ISAPIWorkerRequestInProcForIIS6"
然后经过如下代码的处理...
while ((type1 != null) && (type1.FullName != "System.Web.Hosting.ISAPIWorkerRequest") && (type1.FullName != "Microsoft.VisualStudio.WebHost.Request") && (type1.FullName != "Cassini.Request"))
{
type1 = type1.BaseType;
}
就得到type1.FullName 为"System.Web.Hosting.ISAPIWorkerRequest"
一切都进行得很成功...
但..................................................
出现一个奇怪的问题...
用VS 2005调试,上传成功...
在IIS中右键->浏览,上传成功...
然而,在IE中输入地址,上传失败...
经过封包截取发现,数据中少了2K...
好象直接用IE输入地址的时候,服务器没有返回某些重要信息,导致文件不能上传...
...
由于本人是WIN 2003(IIS6),经过追踪得到HttpWorkerRequest request1 = this.GetWorkerRequest(application1.Context);
中request1的值为"System.Web.Hosting.ISAPIWorkerRequestInProcForIIS6"
然后经过如下代码的处理...
while ((type1 != null) && (type1.FullName != "System.Web.Hosting.ISAPIWorkerRequest") && (type1.FullName != "Microsoft.VisualStudio.WebHost.Request") && (type1.FullName != "Cassini.Request"))
{
type1 = type1.BaseType;
}
就得到type1.FullName 为"System.Web.Hosting.ISAPIWorkerRequest"
一切都进行得很成功...
但..................................................
出现一个奇怪的问题...
用VS 2005调试,上传成功...
在IIS中右键->浏览,上传成功...
然而,在IE中输入地址,上传失败...
经过封包截取发现,数据中少了2K...
11 192.168.1.68:2764 192.168.1.68:80 64 发送
0000 3C 55 70 6C 6F 61 64 53 74 61 74 65 20 75 70 6C <UploadState upl
0010 6F 61 64 69 64 3D 22 63 35 66 37 32 39 62 30 2D oadid="c5f729b0-
0020 62 35 32 64 2D 34 64 38 32 2D 38 65 63 36 2D 31 b52d-4d82-8ec6-1
0030 32 38 39 34 30 39 33 35 37 61 66 22 2F 3E 0D 0A 289409357af"/>..
12 192.168.1.68:80 192.168.1.68:2764 25 接收
0000 48 54 54 50 2F 31 2E 31 20 31 30 30 20 43 6F 6E HTTP/1.1 100 Con
0010 74 69 6E 75 65 0D 0A 0D 0A tinue......
15 192.168.1.68:80 192.168.1.68:2764 565 接收
0000 48 54 54 50 2F 31 2E 31 20 32 30 30 20 4F 4B 0D HTTP/1.1 200 OK.
0010 0A 44 61 74 65 3A 20 57 65 64 2C 20 31 35 20 4E .Date: Wed, 15 N
0020 6F 76 20 32 30 30 36 20 30 38 3A 32 31 3A 32 36 ov 2006 08:21:26
0030 20 47 4D 54 0D 0A 53 65 72 76 65 72 3A 20 4D 69 GMT..Server: Mi
0040 63 72 6F 73 6F 66 74 2D 49 49 53 2F 36 2E 30 0D crosoft-IIS/6.0.
0050 0A 58 2D 50 6F 77 65 72 65 64 2D 42 79 3A 20 41 .X-Powered-By: A
0060 53 50 2E 4E 45 54 0D 0A 58 2D 41 73 70 4E 65 74 SP.NET..X-AspNet
0070 2D 56 65 72 73 69 6F 6E 3A 20 32 2E 30 2E 35 30 -Version: 2.0.50
0080 37 32 37 0D 0A 43 61 63 68 65 2D 43 6F 6E 74 72 727..Cache-Contr
0090 6F 6C 3A 20 70 72 69 76 61 74 65 0D 0A 43 6F 6E ol: private..Con
00A0 74 65 6E 74 2D 54 79 70 65 3A 20 74 65 78 74 2F tent-Type: text/
00B0 78 6D 6C 0D 0A 43 6F 6E 74 65 6E 74 2D 4C 65 6E xml..Content-Len
00C0 67 74 68 3A 20 33 36 31 0D 0A 0D 0A 3C 55 70 6C gth: 361.<Upl
00D0 6F 61 64 53 74 61 74 65 20 68 61 76 65 53 74 61 oadState haveSta
00E0 74 75 73 3D 22 74 72 75 65 22 20 73 74 61 74 65 tus="true" state
00F0 3D 22 43 6F 6D 70 6C 65 74 65 22 20 70 6F 73 69 ="Complete" posi
0100 74 69 6F 6E 52 61 77 3D 22 33 36 32 37 38 36 33 tionRaw="3627863
0110 39 22 20 63 6F 6E 74 65 6E 74 4C 65 6E 67 74 68 9" contentLength
0120 52 61 77 3D 22 33 36 32 37 38 36 33 39 22 20 72 Raw="36278639" r
0130 65 6D 61 69 6E 69 6E 67 4C 65 6E 67 74 68 52 61 emainingLengthRa
0140 77 3D 22 30 22 20 74 72 61 6E 73 66 65 72 72 65 w="0" transferre
0150 64 4C 65 6E 67 74 68 52 61 77 3D 22 33 36 32 37 dLengthRaw="3627
0160 38 36 33 39 22 20 70 6F 73 69 74 69 6F 6E 54 65 8639" positionTe
0170 78 74 3D 22 33 34 2E 36 20 4D 42 22 20 63 6F 6E xt="34.6 MB" con
0180 74 65 6E 74 4C 65 6E 67 74 68 54 65 78 74 3D 22 tentLengthText="
0190 33 34 2E 36 20 4D 42 22 20 72 65 6D 61 69 6E 69 34.6 MB" remaini
01A0 6E 67 4C 65 6E 67 74 68 54 65 78 74 3D 22 30 20 ngLengthText="0
01B0 62 79 74 65 73 22 20 74 72 61 6E 73 66 65 72 72 bytes" transferr
01C0 65 64 4C 65 6E 67 74 68 54 65 78 74 3D 22 33 34 edLengthText="34
01D0 2E 36 20 4D 42 22 20 65 6C 61 70 73 65 64 54 69 .6 MB" elapsedTi
01E0 6D 65 54 65 78 74 3D 22 33 2E 36 20 4D 69 6E 22 meText="3.6 Min"
01F0 20 72 65 6D 61 69 6E 69 6E 67 54 69 6D 65 54 65 remainingTimeTe
0200 78 74 3D 22 33 2E 36 20 4D 69 6E 22 20 63 75 72 xt="3.6 Min" cur
0210 72 65 6E 74 46 69 6C 65 4E 61 6D 65 3D 22 46 3A rentFileName="F:
0220 5C 74 6F 6F 6C 73 5C 6E 6F 72 74 6F 6E 2E 65 78 \tools\norton.ex
0230 65 22 20 2F 3E e" />
0000 3C 55 70 6C 6F 61 64 53 74 61 74 65 20 75 70 6C <UploadState upl
0010 6F 61 64 69 64 3D 22 63 35 66 37 32 39 62 30 2D oadid="c5f729b0-
0020 62 35 32 64 2D 34 64 38 32 2D 38 65 63 36 2D 31 b52d-4d82-8ec6-1
0030 32 38 39 34 30 39 33 35 37 61 66 22 2F 3E 0D 0A 289409357af"/>..
12 192.168.1.68:80 192.168.1.68:2764 25 接收
0000 48 54 54 50 2F 31 2E 31 20 31 30 30 20 43 6F 6E HTTP/1.1 100 Con
0010 74 69 6E 75 65 0D 0A 0D 0A tinue......
15 192.168.1.68:80 192.168.1.68:2764 565 接收
0000 48 54 54 50 2F 31 2E 31 20 32 30 30 20 4F 4B 0D HTTP/1.1 200 OK.
0010 0A 44 61 74 65 3A 20 57 65 64 2C 20 31 35 20 4E .Date: Wed, 15 N
0020 6F 76 20 32 30 30 36 20 30 38 3A 32 31 3A 32 36 ov 2006 08:21:26
0030 20 47 4D 54 0D 0A 53 65 72 76 65 72 3A 20 4D 69 GMT..Server: Mi
0040 63 72 6F 73 6F 66 74 2D 49 49 53 2F 36 2E 30 0D crosoft-IIS/6.0.
0050 0A 58 2D 50 6F 77 65 72 65 64 2D 42 79 3A 20 41 .X-Powered-By: A
0060 53 50 2E 4E 45 54 0D 0A 58 2D 41 73 70 4E 65 74 SP.NET..X-AspNet
0070 2D 56 65 72 73 69 6F 6E 3A 20 32 2E 30 2E 35 30 -Version: 2.0.50
0080 37 32 37 0D 0A 43 61 63 68 65 2D 43 6F 6E 74 72 727..Cache-Contr
0090 6F 6C 3A 20 70 72 69 76 61 74 65 0D 0A 43 6F 6E ol: private..Con
00A0 74 65 6E 74 2D 54 79 70 65 3A 20 74 65 78 74 2F tent-Type: text/
00B0 78 6D 6C 0D 0A 43 6F 6E 74 65 6E 74 2D 4C 65 6E xml..Content-Len
00C0 67 74 68 3A 20 33 36 31 0D 0A 0D 0A 3C 55 70 6C gth: 361.<Upl
00D0 6F 61 64 53 74 61 74 65 20 68 61 76 65 53 74 61 oadState haveSta
00E0 74 75 73 3D 22 74 72 75 65 22 20 73 74 61 74 65 tus="true" state
00F0 3D 22 43 6F 6D 70 6C 65 74 65 22 20 70 6F 73 69 ="Complete" posi
0100 74 69 6F 6E 52 61 77 3D 22 33 36 32 37 38 36 33 tionRaw="3627863
0110 39 22 20 63 6F 6E 74 65 6E 74 4C 65 6E 67 74 68 9" contentLength
0120 52 61 77 3D 22 33 36 32 37 38 36 33 39 22 20 72 Raw="36278639" r
0130 65 6D 61 69 6E 69 6E 67 4C 65 6E 67 74 68 52 61 emainingLengthRa
0140 77 3D 22 30 22 20 74 72 61 6E 73 66 65 72 72 65 w="0" transferre
0150 64 4C 65 6E 67 74 68 52 61 77 3D 22 33 36 32 37 dLengthRaw="3627
0160 38 36 33 39 22 20 70 6F 73 69 74 69 6F 6E 54 65 8639" positionTe
0170 78 74 3D 22 33 34 2E 36 20 4D 42 22 20 63 6F 6E xt="34.6 MB" con
0180 74 65 6E 74 4C 65 6E 67 74 68 54 65 78 74 3D 22 tentLengthText="
0190 33 34 2E 36 20 4D 42 22 20 72 65 6D 61 69 6E 69 34.6 MB" remaini
01A0 6E 67 4C 65 6E 67 74 68 54 65 78 74 3D 22 30 20 ngLengthText="0
01B0 62 79 74 65 73 22 20 74 72 61 6E 73 66 65 72 72 bytes" transferr
01C0 65 64 4C 65 6E 67 74 68 54 65 78 74 3D 22 33 34 edLengthText="34
01D0 2E 36 20 4D 42 22 20 65 6C 61 70 73 65 64 54 69 .6 MB" elapsedTi
01E0 6D 65 54 65 78 74 3D 22 33 2E 36 20 4D 69 6E 22 meText="3.6 Min"
01F0 20 72 65 6D 61 69 6E 69 6E 67 54 69 6D 65 54 65 remainingTimeTe
0200 78 74 3D 22 33 2E 36 20 4D 69 6E 22 20 63 75 72 xt="3.6 Min" cur
0210 72 65 6E 74 46 69 6C 65 4E 61 6D 65 3D 22 46 3A rentFileName="F:
0220 5C 74 6F 6F 6C 73 5C 6E 6F 72 74 6F 6E 2E 65 78 \tools\norton.ex
0230 65 22 20 2F 3E e" />
好象直接用IE输入地址的时候,服务器没有返回某些重要信息,导致文件不能上传...
...