AngularJS AJAX 调用 JAVA 中的 servlet

AngularJS AJAX call to a servlet in JAVA

项目中我的class在一个包com.project.controller下,servlet的名字class是UpdateDatabaseController。 web.xml对应的代码是,

<servlet>
    <servlet-name>UpdateDatabaseController</servlet-name>
    <servlet-class>com.project.controller.UpdateDatabaseController</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>UpdateDatabaseController</servlet-name>
    <url-pattern>/UpdateDB</url-pattern>
  </servlet-mapping>

在 html 页面中,我有一个调用函数 updateDatabase() 的按钮。而脚本的代码是:

$scope.updateDatabase = function(){
        $http.get('/UpdateDB').success(function(data) {
            alert("Controller hit");
        });
    };

每当我点击按钮时,浏览器日志中都会显示错误,即: "NetworkError: 404 Not Found - http://localhost:8080/UpdateDB"

我希望在单击按钮时调用 servlet class 的 POST 方法。但错误已在浏览器日志中修复。我无法解决这种情况。

您在 URL localhost:8080/ProjectName/UpdateDB

中遗漏了项目名称
$scope.updateDatabase = function(){
        $http.get('http://localhost/YourProject/UpdateDB').success(function(data) {
            alert("Controller hit");
        });
    };

我遇到了同样的问题,通过在 link 前面添加 http:// 来修复它。