I've found an issue using the upload control inside IE 10. This is running under full IE10 standards mode, not in compatibility mode.
We're using the unload control to send a CSV file along with a few extra parameters to the server. Chrome and IE9 both have no problem with this but under IE10 we get a 500 back from the server.
The specific difference between the request from Chrome and the request from IE10 is:
Chrome:
POST /api/csv?username=Administrator HTTP/1.1
Accept: */*
Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryQurgi2tW6JVeKs0Q
------WebKitFormBoundaryQurgi2tW6JVeKs0Q
Content-Disposition: form-data; name="csv[]"; filename="Outlook Contacts.CSV"
Content-Type: application/octet-stream
"Title","First Name","Middle Name" ...
IE10:
POST /api/csv?username=Administrator HTTP/1.1
Accept: */*
Content-Type: multipart/form-data; boundary=---------------------------7dc3b02050500
-----------------------------7dc3b02050500
Content-Disposition: form-data; name="csv[]"; filename="C:\Users\User\Desktop\Outlook Contacts.CSV"
Content-Type:
"Title","First Name","Middle Name" ...
Note that the content type is missing from the IE version. Using fiddler I can edit and resend the request with the content type filled in and it works fine. I don't know how this gets set, whether the upload control builds this request or it happens in the depths of IE. Either way it's coming out the other end incorrectly.
We're using the unload control to send a CSV file along with a few extra parameters to the server. Chrome and IE9 both have no problem with this but under IE10 we get a 500 back from the server.
The specific difference between the request from Chrome and the request from IE10 is:
Chrome:
POST /api/csv?username=Administrator HTTP/1.1
Accept: */*
Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryQurgi2tW6JVeKs0Q
------WebKitFormBoundaryQurgi2tW6JVeKs0Q
Content-Disposition: form-data; name="csv[]"; filename="Outlook Contacts.CSV"
Content-Type: application/octet-stream
"Title","First Name","Middle Name" ...
IE10:
POST /api/csv?username=Administrator HTTP/1.1
Accept: */*
Content-Type: multipart/form-data; boundary=---------------------------7dc3b02050500
-----------------------------7dc3b02050500
Content-Disposition: form-data; name="csv[]"; filename="C:\Users\User\Desktop\Outlook Contacts.CSV"
Content-Type:
"Title","First Name","Middle Name" ...
Note that the content type is missing from the IE version. Using fiddler I can edit and resend the request with the content type filled in and it works fine. I don't know how this gets set, whether the upload control builds this request or it happens in the depths of IE. Either way it's coming out the other end incorrectly.