如何使用C#Web Api后端处理AngularJS中的未知路由

时间:2016-05-27 09:57:44

标签: javascript c# angularjs asp.net-web-api angular-ui-router

我正在构建一个具有AngularJS前端的网站,该前端与C#Web API进行通信。我想在angular中配置路由,这样当你调用/ main时你会转到主页等等。

我目前已经设置了我的AngularJS路线:

(function () {
'use strict';

angular
    .module('app.main')
    .config(configure);

configure.$inject = ['$stateProvider', '$urlRouterProvider'];
/* @ngInject */
function configure($stateProvider, $urlRouterProvider) {

    $stateProvider
        .state('main', {
            url: '/main',
            views: {
                mainbody: {
                    templateUrl: 'templates/main/cityScreen.html',
                    controller: 'cityController',
                    controllerAs: 'vm',
                },
            }
        });

    $urlRouterProvider.otherwise('/');
}
})();

调用

时,此路由正常
$state.go('main');

在js代码中。但是只要我刷新页面,或者手动浏览到/ main,我就会收到以下消息。

  

     未找到与请求URI“http://localhost:50561/main”匹配的HTTP资源。         未找到与名为“main”的控制器匹配的类型。      

我认为这是因为我的Web API找不到/ main控制器的任何路由。哪个是对的。所以我的问题是如何设置我的Web API以不提供此错误,而是返回一些内容,以便我的角度可以拾取路径并正确处理页面。

0 个答案:

没有答案