2

我正在将我的 Angular 应用程序部署在 Web 服务器中,该应用程序可能位于http://localhost:8080/app-name、 或http://foobars.com/或其他一些 URL。我对绝对路径没有任何保证——有时调用可能需要去/app-name/foo,有时去/foo,有时去/foobars/foo。换句话说,上面的示例中有一个移动部分:/app-name, (empty), /foobars。也称为上下文路径。

我知道我可以<base>用于 HTML。我可以包装$http或配置 Restangular 来为所有调用添加上下文路径。

但仍有一些情况我还不知道如何解决。例如,每当指令使用模板时,它也会通过 bare 加载$http

我怎样才能$http始终为所有请求使用某些特定的基本路径?

4

1 回答 1

2

您需要将 $httpProvider 配置为使用一个拦截器,该拦截器会修改 $http 调用将使用的配置。

请参阅此处的拦截器部分:http: //docs.angularjs.org/api/ng.$http

这将允许您以所有 $http 调用所需的任何方式控制上下文路径。

于 2013-10-09T20:56:18.513 回答