配置将所有 $http 和 $resource 调用重定向到其他端点
Configure redirect of all $http & $resource calls to other endpoint
我想要 运行 模拟服务器,例如JSON Server,并在开发期间在我的真实 Java REST API 后端和此 JSON 服务器之间切换(例如当真实后端服务关闭时)。有没有办法轻松配置 angular 以对所有请求使用不同的主机?
我的设置:
- localhost:8080 - Spring MVC 应用程序,服务于 SPA + API
- localhost:8080/api - Spring MVC Rest API
- localhost:9090/api - JSON 服务器
而且我想在对 localhost:8080/api
和 localhost:9090/api
的调用之间切换,整个 Angular 应用程序只有一条线。
我们可以设置 prefixURI 变量来快速改变指向不同的 API。
用法:
var prefixURI ='https://••••':
//var prefixURI = '';//if you are on same port it is empty
$http.get(prefixURI+'posts');
@PetrAveryanov 给了我提示。使用 json-proxy
这就像启动代理一样简单:
json-proxy -p 8081 -f "/api=http://localhost:9090" -f "/=http://localhost:8080"
并通过端口 8081
访问应用程序。 "Regular" 请求仍将传递给 8080
(Tomcat 服务于 Spring MVC 应用程序)。所有 API 调用都将转到 9090
(JSON 服务器)。
我想要 运行 模拟服务器,例如JSON Server,并在开发期间在我的真实 Java REST API 后端和此 JSON 服务器之间切换(例如当真实后端服务关闭时)。有没有办法轻松配置 angular 以对所有请求使用不同的主机?
我的设置:
- localhost:8080 - Spring MVC 应用程序,服务于 SPA + API
- localhost:8080/api - Spring MVC Rest API
- localhost:9090/api - JSON 服务器
而且我想在对 localhost:8080/api
和 localhost:9090/api
的调用之间切换,整个 Angular 应用程序只有一条线。
我们可以设置 prefixURI 变量来快速改变指向不同的 API。
用法:
var prefixURI ='https://••••':
//var prefixURI = '';//if you are on same port it is empty
$http.get(prefixURI+'posts');
@PetrAveryanov 给了我提示。使用 json-proxy
这就像启动代理一样简单:
json-proxy -p 8081 -f "/api=http://localhost:9090" -f "/=http://localhost:8080"
并通过端口 8081
访问应用程序。 "Regular" 请求仍将传递给 8080
(Tomcat 服务于 Spring MVC 应用程序)。所有 API 调用都将转到 9090
(JSON 服务器)。