AngularJS의 가상 경로는 어떻게 처리합니까?AngularJS 및 가상 경로
예를 들어 내 테스트 환경에서 내 기본 URL은 http://localhost/AppName/
이고 프로덕션 환경에서는 루트가 http://www.mysite.com/
이됩니다.
dev에서 $http.get
은 http://localhost/AppName/Controller/Action
으로 표시되지만 그 경로가 존재하지 않는다는 가정하에 http://www.mysite.com/Controller/Action
이어야합니다.
으로 백엔드를 조롱 할 때 $http
호를 어떻게 처리합니까?
_Layout.cshtml
(사용 ASP.NET MVC)에서 이것을 시도했지만 그 단위 테스트에서 작동하지 않습니다
: 또한 시도
<script>
(function() {
'use strict';
var app = angular.module('cs').value('urlHelper', {
getUrl: function (url) {
var basePath = '@VirtualPathUtility.ToAbsolute("~/")';
return basePath + url;
}
});
}());
</script>
:
(function() {
'use strict';
var app = angular.module('cs', []);
app.run(['$rootScope', function ($rootScope) {
$rootScope.basePath = '/';
}]);
}());
어떤 아이디어로하지 prod에 배포하기 전에 어딘가에 루트 경로를 전환하는 것에 대해 걱정해야합니까?
이 도메인 이름으로 귀찮게'/ '로 시작하지 마십시오. 자동으로 올바른 루트를 가리 킵니다. – Mik378
@ Mik378 - $ http로 내 요청을'$ http.get ('/ Controller/Action')'과 같이 작성하면 두 경우 모두 사용할 수 있습니까? – Sam
네, 그렇습니다. 내 응용 프로그램에서 그런 식으로 일하고 있어요. – Mik378