我的angularjs示例应用程序在我的基于netbeans ide的本地服务器上正常运行。但是当我将应用程序移动到nginx服务器时,它在浏览器中给出了以下错误。
Error: [$compile:tpload] Failed to load template: views/login.html
http://errors.angularjs.org/1.3.15/$compile/tpload?p0=views%2Flogin.html
at REGEX_STRING_REGEXP (angular.js:63)
at handleError (angular.js:16133)
at processQueue (angular.js:13248)
at angular.js:13264
at Scope.$get.Scope.$eval (angular.js:14466)
at Scope.$get.Scope.$digest (angular.js:14282)
at Scope.$get.Scope.$apply (angular.js:14571)
at done (angular.js:9698)
at completeRequest (angular.js:9888)
at XMLHttpRequest.requestLoaded (angular.js:9829)
我的app.js
appModule
.config(['$routeProvider', function($routeProvider) {
$routeProvider
.when('/',
{
controller: 'loginController',
templateUrl: 'views/login.html'
})
.when('/main',
{
controller: 'dashboardController',
templateUrl: 'views/dashboard.html'
})
.otherwise({redirectTo: '/'});
}])
答案 0 :(得分:1)
我发现我的问题是关于Default $ http Headers。我刚刚为Authorization
添加了默认标头,为Accept
添加了默认application/json
。
惊喜!!! 事实证明,这些$ http标题不仅适用于您对终结点进行的$ http调用...而且还适用于每次拨打电话的路由 html文件。而且,如果使用这些标题会导致html文件爆炸,整个过程就会失败。
我只是停止设置Default $ http标头,并编写了我的微服务调用将使用的辅助服务,因为他们需要app / json。然后我的Angular Routing调用又回到了使用标准头文件。
答案 1 :(得分:1)
如果您使用node.js,请尝试此
app.use(express.static(path.join(__dirname,'yourFolder/invoices')));