使用 spring mvc 连接 angular 代理配置时出现 404 错误
Getting 404 error when connecting angular proxy config with spring mvc
正在尝试使用代理 json 将 angular 与 spring mvc 连接。
我尝试了多次,但总是抛出 404 错误。
GET http://localhost:4200/api/v1/employees 404 (Not Found)
这是我的代码块的片段。
提前致谢。
proxy.conf.json
{
"/api/v1": {
"target": "http://localhost:8080",
"secure": false,
"changeOrigin": true
}
}
app.component.ts
getAllEmployees() {
this._http.get('/api/v1/employees').subscribe(
data => {
this.result = data.toString();
},
error => {
});
}
控制器
@RestController
@RequestMapping(value = "/api/v1")
public class HomeController {
@RequestMapping("/employees")
public String getDisplayMessage() {
return "Hi Welcome!!!";
}
}
web.xml
<servlet-mapping>
<servlet-name>dispatcher</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
假设在单击 html 按钮时调用 getAllEmployee() 方法。
我可以收到消息“您好,欢迎!!!” ,当我尝试 http://localhost:8080/spring-mvc-demo/api/v1/employees
谁能告诉我哪里写错了?
看到不一致之处:您的代码对 /api/v1/employees
的请求被代理到(我们只是在前面加上 http://localhost:8080
)http://localhost:8080/api/v1/employees
并且在您的 api 正如你所说的路径 http://localhost:8080/spring-mvc-demo/api/v1/employees
是预期的。我相信你的代理应该是
{
"/api/v1": {
"target": "http://localhost:8080/spring-mvc-demo",
"secure": false,
"changeOrigin": true
}
}
正在尝试使用代理 json 将 angular 与 spring mvc 连接。 我尝试了多次,但总是抛出 404 错误。
GET http://localhost:4200/api/v1/employees 404 (Not Found)
这是我的代码块的片段。 提前致谢。
proxy.conf.json
{
"/api/v1": {
"target": "http://localhost:8080",
"secure": false,
"changeOrigin": true
}
}
app.component.ts
getAllEmployees() {
this._http.get('/api/v1/employees').subscribe(
data => {
this.result = data.toString();
},
error => {
});
}
控制器
@RestController
@RequestMapping(value = "/api/v1")
public class HomeController {
@RequestMapping("/employees")
public String getDisplayMessage() {
return "Hi Welcome!!!";
}
}
web.xml
<servlet-mapping>
<servlet-name>dispatcher</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
假设在单击 html 按钮时调用 getAllEmployee() 方法。
我可以收到消息“您好,欢迎!!!” ,当我尝试 http://localhost:8080/spring-mvc-demo/api/v1/employees
谁能告诉我哪里写错了?
看到不一致之处:您的代码对 /api/v1/employees
的请求被代理到(我们只是在前面加上 http://localhost:8080
)http://localhost:8080/api/v1/employees
并且在您的 api 正如你所说的路径 http://localhost:8080/spring-mvc-demo/api/v1/employees
是预期的。我相信你的代理应该是
{
"/api/v1": {
"target": "http://localhost:8080/spring-mvc-demo",
"secure": false,
"changeOrigin": true
}
}