2017-09-18 1 views
1

Je viens de mettre à niveau une application Web ASP.NET Core 1.1 vers la version 2.0 et j'ai testé sans problème localement. Cependant, lorsque le site est déployé sur Azure, une requête POST qui a fonctionné localement aboutit à un 404 (je suppose que cela pourrait être la même pour toutes les requêtes POST, mais je suis incapable de me connecter en raison du problème).Demande POST de site ASP.NET Core 2.0 entraînant 404 sur Azure

Avez-vous des idées pour expliquer pourquoi cela ne fonctionne pas lors du déploiement sur Azure mais fonctionne parfaitement lorsqu'il est exécuté localement dans IIS Express?

J'ai supprimé l'emplacement de déploiement d'origine sur Azure et recréé comme déployant initialement sur les anciennes DLL 1.1 avec les nouvelles DLL 2.0 et empêchant le fonctionnement du site.

+0

Avez-vous essayé d'activer la journalisation? Peut-être que vous pouvez obtenir des indices là-bas? –

+0

@AlexAlbu merci, c'est là que j'ai trouvé le vrai problème. Juste besoin de comprendre pourquoi je recevais un 4040 au lieu d'un code de réponse d'erreur! – Gavin

Répondre

0

Semble que j'ai été pris en défaut par la mauvaise gestion des erreurs par mon application web. Je ai supposé que app.UseExceptionHandler("/Error") (je par défaut mon HomeController de ne pas exiger le principal "Accueil" pour/Home/Error) dans Startup.cs rediriger vers une page d'erreur, mais pour moi ce n'est pas.

Mon problème sous-jacent était une erreur de connexion à la base de données qui a provoqué l'échec de la méthode du contrôleur POST. J'ai été surpris par la réponse renvoyant un 404 plutôt qu'un statut d'erreur.

Je vais devoir étudier comment fonctionne la gestion des erreurs plus en détail pour ASP.NET Core, il semble.