2015-11-20 3 views
1

J'ai un service Web de récupération dans .Net. Lorsque nous avons testé le PUT dans un PC avec Windows 7 et IIS 7, cela fonctionne très bien. Lorsque nous avons testé le service Web sur un PC avec Windows 8 et IIS 8.5, nous obtenons un code d'état 405. Ceci est le résultat de FiddlerReste n'autorisant pas PUT dans IIS 8.5: erreur 405

enter image description here

Modifier Ceci est la partie applicationHost.config en ce qui concerne ExtensionlessUrlHandler-Integrated. Je n'ai pas ExtensionlessUrl intégré

enter image description here

Je suppose que cela est un problème IIS, quelqu'un sait comment résoudre ce problème? Merci d'avance

Répondre

4

Vous devez ajouter le verbe PUT dans votre liste ExtensionlessUrl-Integrated-4.0. Procédez comme suit pour modifier votre fichier applicationhost.config pour votre instance IIS.

<add name="ExtensionlessUrl-Integrated-4.0" path="*." verb="GET,HEAD,POST,PUT,OPTIONS,TRACE" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" responseBufferLimit="0" /> 

Vous voudrez également ajouter d'autres verbes que vous pourriez autoriser comme SUPPRIMER.

Voir: ASP.NET Web API - PUT & DELETE Verbs Not Allowed - IIS 8

+0

où devrait être ce fichier? J'ai 4 fichiers dans ce PC avec nommé applicationhost.config –

+0

Cela dépend de votre configuration, mais par défaut, il est situé dans C: \ Windows \ System32 \ inetsrv \ config – Xipooo

+0

trouvé, il y a un ExtensionlessUrlHandler-Integrated-4.0, changé cela et même résultat. –