我有一个使用AngularJS的yeoman网络应用程序,效果很好!现在我想向后端做一些Ajax请求。
yeoman应用程序在localhost:9000上运行(我用grunt serve
运行它,这让我快速重新加载)
后端spring应用程序在localhost:8080上运行(我使用mvn spring-boot:run
运行它)
使用后端测试前端的工作流程是什么? 我总是可以将前端构建代码复制到后端公用文件夹,但这很耗时。或者我可以做一些跨域Ajax尝试,但不确定这是正确的方法。
将前端与后端API集成以进行测试的最快最简单的方法是什么?
答案 0 :(得分:1)
可以像这里一样使用CORS管理: Spring Cors doc
或
使用grunt代理,在你的gruntfile.js中在connect:markup之后添加这个(假设后端运行在localhost:9292上)
// The actual grunt server settings
connect: {
server: {
proxies: [
{
context: '/',
host: 'localhost:9292',
changeOrigin: true
}
]
},
...
见http://fettblog.eu/blog/2013/09/20/using-grunt-connect-proxy/
答案 1 :(得分:0)
我用proxy_pass
解决了Ajax跨域问题。
只需为您的前端设置虚拟主机,并在后端添加proxy_pass。
如果您使用的是Nginx(Apache也支持proxy_pass): http://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_pass
在您的虚拟主机文件中,它应该是这样的:
location /api/ {
proxy_pass http://localhost:9000;
}