J'utilise Fiddler (ou post manager) pour invoquer des requêtes sur mon WebApi. (Il est hébergé comme une application ASP.net dans IIS)Les requêtes POST de taille 100K ne parviennent pas à webAPI?
C'est le service:
[HttpPost]
[ActionName("uploadRessources")]
[AllowAnonymous]
public HttpResponseMessage uploadRessources(ResourcesJson json)
{
...
return Request.CreateResponse(HttpStatusCode.OK, result);
}
Pour le corps court de longueur (3 lignes de données) des demandes de données post-longueur comme:
POST http://something.com/api/services/uploadRessources HTTP/1.1
Cache-Control: no-cache
Connection: keep-alive
Pragma: no-cache
Accept: application/json
Accept-Encoding: gzip
Accept-Language: he-IL
User-Agent: Mozilla/5.0
Content-Length: 451
Content-Type: application/json
Host: es.com
{ "l":
[{"MasterEntity":2,"screen":"ConfirmHealthDetailsPage","Lbl":"ApproveTheFollowingDetails","enus":"Approve the Following Details:","device":"mobile","description":"NULL"},
{"MasterEntity":2,"screen":"ConfirmHealthDetailsPage","Lbl":"PersonalDetails","enus":"Personal Details","device":"mobile","description":"NULL"},
{"MasterEntity":2,"screen":"FingerPrintResources","Lbl":"CANCEL","enus":"CANCEL","device":"mobile","description":"NULL"}]
}
je reçois une réponse positive:
HTTP/1.1 200 OK
Mais pour une demande de la longueur du corps à long (101K) -
Il est bloqué (il a frappé n'a même pas le point d'arrêt dans mon code, tout en bref demande - il fait) et je ne vois jamais une réponse:
BTW - Si plus tard je réexécute la requête de longueur de corps courte (en attendant les requêtes précédentes) - j'en reçois 200 (pour la requête de longueur courte).
En web.config je positionniez:
<httpRuntime enableVersionHeader="false" executionTimeout="100000000" maxRequestLength="999999999" />
Dans IIS: Aucun filtre requêtes
Dans l'Observateur d'événements - je ne vois pas des exceptions ou des avertissements IIS version 6.1 (Windows 7) - mais cela arrive aussi sur notre serveur.
Question
Pourquoi pas ma demande de longueur de 101k - arriver à mon WebAPI?
Modifier
que j'ai trouvé que cela arrive pour> 65k demandes. Ne sait toujours pas quel est le problème
Peut vous aider: [Longueur maximale de la requête dépassée] (http: //stackoverflow.com/a/3853785/3060520) –
@ user3060520 Ive a découvert que cela se produit pour des requêtes> 65k. Je ne sais toujours pas pourquoi –
J'ai trouvé quelques ressources sur le problème: [WCF: Comment augmenter la limite de taille de la requête] (http://fczaja.blogspot.com.tr/2011/06/wcf-how-to-increase- permission-request.html) –