java - java中捕获get请求

标签 java jakarta-ee java-ee-7

假设我有一个 HTML 页面,并且在 java 上运行后端,我想进行简单的 ajax 请求调用。

例如

fetch('localhost:8080/testResponse)
.then(function(response) {
  return response.json();
})

在我的java服务器上我有

@Path('testResponse')
public class NewClass {
    private String name = "MyName";
    private String age = "MyAge";
    @GET
    public String getName(){
        return this.name;
    }
    @GET
    public String getAge(){
        return this.age;
    }
}

所以基本上有对/testResponse 的 get 请求,并且 Path 注释指示哪个类应该捕获它,但是我如何选择将调用哪个方法并返回数据?其背后的逻辑是什么?我找不到任何相关信息。

//////////////////////////////////

所以。我在 netbeans 中创建了新的 Web 项目。它生成了 html 文件,我只添加了对服务器的基本 ajax 调用。

<html>
    <head>
        <title>TODO supply a title</title>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
    </head>
    <body>
        <div>TODO write content</div>
        <script>
            fetch('/ajax_test/testResponse/name').then(function(x){
                alert(JSON.stringify(x));
            })
        </script>
    </body>
</html>

当我运行它时,它显示在 localhost:8080/ajax_test

我通过此处的注释创建了一个文件,例如

@Path("/ajax_test")
public class testik {
    private String name = "MyName";
     private String age = "MyAge";
    @GET
    @Path("/name")
    public String getName(){
        return this.name;
    }
    @GET
    @Path("/age")
    public String getAge(){
        return this.age;
    }
}

但它仍然是 404 我错过了什么吗?再次感谢您的帮助

最佳答案

只需使用@Path 来进一步描述端点。 因此,如果您想要“URL Prefix/testResponse/name”和“URL Prefix/testResponse/age”,请执行以下操作:

@Path("/testResponse")
public class NewClass {
    private String name = "MyName";
     private String age = "MyAge";
    @GET
    @Path("/name")
    public String getName(){
        return this.name;
    }
    @GET
    @Path("/age")
    public String getAge(){
        return this.age;
    }

关于java - java中捕获get请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41291100/

相关文章:

maven - 如何创建 Java EE 7 Maven IntelliJ 项目

java - 控制 ManagedExecutorServices/Java EE 7 的线程数

java升级打破了单元测试

java - 如何使用 JPA 映射具有本地化产品名称的表?

java - 为什么struts2-junit插件提示约定插件?

javax.mail 不想从我的 Web 应用程序发送邮件,但它从我的控制台应用程序发送邮件

java - 当我正确映射并且文件位于正确的目标位置时出现 "requested resource not available"错误,但我反复遇到同样的问题

java - jsp/servlet,为管理员、用户和未登录用户显示不同的链接

java - Spring中的动态@Value等价物?

java - Servlet PrintWriter 输出流真的需要关闭吗?