Java REST 调用与 Web 应用程序的前端有何关系?

jav*_*999 4 javascript java rest http

我知道Web 应用程序REST中的调用是如何工作的Java。例如,当到达 a 时,URL将使用 调用其方法HTTP

例如:

 @GET
    @Path("people/{id}")
    public Response getPersonWithId(@PathParam("id") id) {

      //return the person object with that Id

    }
Run Code Online (Sandbox Code Playgroud)

不确定这是如何链接到前端的?

UI 的作用(即javascript)只是将用户带到特定的 URL 以便可以调用后端方法吗?

例如,如果用户按下“获取详细信息”按钮,该按钮是否会将他们重定向到负责返回详细信息的 URL,然后调用后端功能?

Ra *_* Ka 5

WebService实际上并不像webapp那样链接或绑定到前端。相反,Webservice 是一种根据请求类型(get、post、update、delete)以 JSON/XML、纯文本格式提供结果的服务,因此,该服务可以由任何多个前端应用程序使用(不仅是Web 应用程序,还有智能手机应用程序、桌面应用程序等)。此外,Web 服务可以位于完全不同的服务器上。

让我给你一个场景:

假设您有一个前端网站 ABC-Website 和主机上的后端 Web 服务:www.xyzservice.com/api,具有以下方法:

/product - 获取以 json 格式返回所有产品列表的请求。

/product/id - 获取请求以 json 格式返回给定 id 的产品详细信息。

现在,如果您只需在浏览器中输入内容www.xyzservice.com/api/product,所有产品列表都会以 json 格式显示在浏览器中。这意味着,您也可以直接在浏览器中读取 Web 服务的数据,而无需前端系统,即 Web 服务不链接/绑定到任何前端。

现在,您想在 ABC 网站中使用此 Web 服务来显示所有产品列表:

You call www.xyzservice.com/api/products and get JSON object that you can use to display in your html page.

<button type="button" onclick="getProducts()">Click Me!</button> 

function getProducts(){ 
$.ajax({
        type : "GET",
        contentType : "application/json",
        url : "http://www.xyzservice.com/api/product",
        dataType : 'json',
        timeout : 100000,
        success : function(data) {
            // now you have "data" which is in json format-same data that is displayed on browser.
            displayDate(date);      
        },
        error : function(e) {
            //do something
        },
        done : function(e) {
            //do something
        }
    });
}

function displayDate(){
    //your codes to parse and display json data  in html table in your page.
}
Run Code Online (Sandbox Code Playgroud)