Je construis une application iPhone pour extraire un fichier d'un serveur IIS7. J'utilise un simple NSURLRequest pour récupérer ce fichier. La demande fonctionne bien si j'utilise un autre serveur web, mais pour une raison quelconque, celui-ci continue à me donner une mauvaise demande de 400. J'ai donc pris un coup d'œil à la demande du NSURLRequest envoie, et il ressemble à ceci:NSURLRequest Bad Request (400) à IIS Server
::1 [Wed Sep 01 20:18:53 -0400 2010]: GET /some.file
::1 [Wed Sep 01 20:18:53 -0400 2010]: HTTP/1.1
::1 [Wed Sep 01 20:18:53 -0400 2010]: Host: localhost
::1 [Wed Sep 01 20:18:53 -0400 2010]: User-Agent: MyApp/1.0 CFNetwork/485.2 Darwin/10.4.0
::1 [Wed Sep 01 20:18:53 -0400 2010]: Accept: */*
::1 [Wed Sep 01 20:18:53 -0400 2010]: Accept-Language: en-us
::1 [Wed Sep 01 20:18:53 -0400 2010]: Accept-Encoding: gzip, deflate
::1 [Wed Sep 01 20:18:53 -0400 2010]: Connection: keep-alive
::1 [Wed Sep 01 20:18:53 -0400 2010]:
je telnet et connecté directement au serveur Web. Envoyé le suivant:
GET /some.file HTTP/1.1\r\n
Cela a bien fonctionné, le serveur a répondu avec le fichier. J'ai l'impression que le fait que NSURLRequest mette HTTP/1.1 sur une autre ligne fait que IIS7 renvoie une requête incorrecte.
Quelqu'un sait comment je peux remédier à cette situation? Cela ne me dérange pas de faire des changements sur le serveur ou le client, mais malheureusement, je suis coincé avec IIS.
Merci