Introduzione:(405) Metodo non consentito. WCF WebService
Ciao, sto cercando di creare un servizio Web WCF sul mio server locale IIS 7.5, ma dopo aver finito le configurazioni di base non sono in grado di inviare i dati con un client WinForms di prova e ritorna l'errore menzionato nei titoli. Ho già cercato thread simili su questo problema ma non ho trovato nulla che si adattasse al mio problema.
dati:
-Sia il WebService WCF e il client di prova se previsto da un 3rd party
-Hanno già lavorare su un altro server e sto usando le stesse versioni
-Sono probabilmente facendo qualcosa di sbagliato quando ho abilitare o configurare IIS
Richiesta:
-I bisogno di sapere cosa IIS caratteristiche che ne per abilitare/disabilitare per installarlo correttamente in modo da poter utilizzare il Wcf WebService. (Se è così).
-Come configurare correttamente il server per risolvere l'errore sopra indicato.
miei Configurazioni:
-Dopo Installazione di IIS ho cambiato il DefaulAppPool a .NET Framework v4.0.30.319; modalità pipeline: integrata. -Impostazioni avanzate: Carica profilo utente = Falso.
-Creato un nuovo sito Web denominato "WcfMicrocontrollerService" utilizzando DefaultAppPool.Binding; Tipo: http, indirizzo IP:, porta: 80
A questo punto posso accedervi tramite un browser Web, tuttavia quando uso il client di test per i dati POST al servizio ottengo il seguente errore: "Il remoto il server ha restituito una risposta imprevista: (405) Metodo non consentito. "
Qui ci sono i pacchetti di dati inviati come registrato da Fiddler: Sent:
POST http://192.168.0.102/MicroControllerComSvc.svc HTTP/1.1
Content-Type: text/xml; charset=utf-8
SOAPAction: "http://tempuri.org/IMicroControllerComSvc/GetMicrocontrollerData"
Host: 192.168.0.102
Content-Length: 237
Expect: 100-continue
Accept-Encoding: gzip, deflate
Connection: Keep-Alive
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"><s:Body><GetMicrocontrollerData xmlns="http://tempuri.org/"><microControllerData>1,1,1,1,2,2,1,0,100,300</microControllerData></GetMicrocontrollerData></s:Body></s:Envelope>
ricevute:
HTTP/1.1 405 Method Not Allowed
Cache-Control: private
Allow: GET, HEAD, OPTIONS, TRACE
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.5
X-Powered-By: ASP.NET
Date: Tue, 01 Mar 2016 10:44:44 GMT
Content-Length: 5671
Ed ecco il corpo: https://dl.dropboxusercontent.com/u/2237590/405.html
Questo sembra indicare che Dovrei dare un'occhiata alle mappature del gestore ma non ho idea di cosa modificare lì.
Sono riuscito a far funzionare il servizio Web su un altro computer su cui è installato Windows 10 (IIS 10) e le istruzioni, laddove applicabile. Tuttavia con Windows 7 SP1 ho solo l'opzione .Net Framework 3.5 e ottengo l'errore 500.21 dopo aver abilitato l'attivazione HTTP ma non sono più bloccato e dovrei essere in grado di risolvere il problema da solo. Stavo cercando nel posto sbagliato e non l'avrei mai capito. Grazie mille! –
Sono felice che questo abbia aiutato – simlawstu
Ciò ha davvero aiutato - ha funzionato bene in Server 2016 Preview 5 - Penso che abbia installato quasi tutte le funzionalità per impostazione predefinita. Dopo un'installazione pulita di Server 2016 Standard questo bit mi stava facendo impazzire e sappiamo tutti quanto sia stressante lavorare su un programma :-) – gchq