web-dev-qa-db-fra.com

Echec du chargement de la ressource: le serveur a répondu avec un statut de 403 (interdit) MVC 5

J'essaie d'apprendre certaines choses avec un code source, mais lorsque j'essaie de me reproduire ce code, j'obtiens cette erreur.

J'ai une vue index où j'essaie d'accéder à des modèles .cshtml à partir d'un autre dossier.

@{
    ViewBag.Title = "Index";
}
<div ng-controller="inboxIndexCtrl">
    <div class="row">
        <div class="col-sm-1">
            <a ng-href="#/" id="InboxSubNav">Inbox</a>
            <hr />
            <a ng-href="#/sent" id="InboxSubNav">Sent</a>
            <hr />
            <a ng-href="#/create" id="InboxSubNav">Create</a>
        </div>
        <div class="col-sm-11">

            <div class="well" ng-view></div>

        </div>

    </div>
</div>

Scénario:

var mail = angular.module('mail', ['ngRoute']);

mail.config([
    '$routeProvider', ($routeProvider) => {
        $routeProvider.when('/', {
            templateUrl: 'Templates/Incoming.cshtml'
        })
            // Registering path with controller relative to Inbox/Index
            // This part is similar to RouteConfig.cs in ASP MVC
            .when('/message/:id', {
                // Templates are located inside Inbox.
                templateUrl: 'Templates/Message.cshtml',
                controller: 'oneMessageCtrl'
            }).when('/create', {
                templateUrl: 'Templates/Create.cshtml',
                controller: 'createCtrl'
            }).when('/reply/:id', {
                templateUrl: 'Templates/Reply.cshtml',
                controller: 'replyCtrl'
            }).when('/sent', {
                templateUrl: 'Templates/Sent.cshtml',
                controller: 'sentCtrl'
            })

            .otherwise({ redirectTo: '/' });

    }
]);

_Layout a inclus ng-app<html ng-app="mail">. De plus, le paquet Angular est chargé avant Jquery, et cela se fait avec localhost.

Les versions que j'utilise:

Angular 1.3.0-beta4
jquery-1.10.2

Lorsque la page est chargée, pendant une seconde elle charge le <div class="well" ng-view></div> puis disparaît.

Lorsque je passe la souris au-dessus des liens, le chemin semble aller. Lorsque je clique sur des liens, il reste sur le chemin mais ne charge rien en raison d'une erreur 403.

Voici quelques liens:

http://localhost:49602/Messages/Index#/
http://localhost:49602/Messages/Index#/sent
http://localhost:49602/Messages/Index#/create

Mon hypothèse est que je n'utilise pas les bonnes versions de Angular/Jquery ou est-ce qu'il me manque des paquets?

J'ai essayé de voir dans le navigateur un modèle et j'ai eu une autre erreur:

Erreur serveur dans l'application. Ce type de page n'est pas servi.

Description: le type de page que vous avez demandé n'est pas servi car il a été explicitement interdit. L'extension '.cshtml' peut être incorrect. Veuillez revoir l’URL ci-dessous et assurez-vous qu’il s’agit bien de épelé correctement. 

URL demandée: /Messages/Templates/Create.cshtml

2
Eduard

Eh bien, avec l'aide de stackoverflow, j'ai résolu le problème:

Voici la solution: Erreur du serveur dans l'application '/'. Ce type de page n'est pas servi

<add key="webpages:Enabled" value="true" />

Il a été mis sur false dans ma webconfig 

4
Eduard