我正在尝试从AngularJS应用中的网址中删除主题标签。我正在使用Web API 2.0来检索一些数据。这就是我所做的:
在我的app.js
中app.config(function($routeProvider, $locationProvider) {
$routeProvider
.when("/products", {
templateUrl: "app/products/productListView.html"
})
.when("/products/:id", {
templateUrl: "app/products/productInfoView.html"
})
.otherwise({ redirectTo: "/products" });
$locationProvider.html5Mode(true);
});
我还在{strong> index.html 中添加了<base href="/">
。
当我转到http://localhost:49767/
并使用链接从那里导航时,它工作正常。
例如,点击某个产品会将我带到http://localhost:49767/products/5
并正确加载信息。但是,如果我直接转到http://localhost:49767/products
或直接转到特定产品,我会从IIS中找到404找不到错误。
我错过了什么?
答案 0 :(得分:3)
您必须将服务器配置为使用html5mode。
ASP.Net C#重写
在Global.asax
中java -cp "<path to your jar>;<path to dependency 1>;<path to dependency 3>[;...]" <your main class>
有关详细信息,请参阅this link
答案 1 :(得分:0)
在我的应用中,我的方式是:
删除$locationProvider.html5Mode(true);
和<a href="#/products/1">1</a><a href="#/products/2">2</a>