2011-10-09 56 views
0

我一直在尋找遍佈互聯網試圖找到如何做到這一點的例子。我只是想消費的外部REST服務器,但我不知道如何設置外部服務器的URL,請大家幫忙如何使用grails JAX-RS來消費外部休息?

import static org.grails.jaxrs.response.Responses.* 

import javax.ws.rs.Consumes 
import javax.ws.rs.GET 
import javax.ws.rs.Produces 
import javax.ws.rs.Path 
import javax.ws.rs.PathParam 
import javax.ws.rs.POST 
import javax.ws.rs.core.Response 

**@Path('http://localhost:8080/prueba3/api/person')** 
@Consumes(['application/xml','application/json']) 
@Produces(['application/xml','application/json']) 
class PersonCollectionResource { 

    @POST 
    Response create(Person dto) { 
     created dto.save() 
    } 

    @GET 
    Response readAll() { 
     ok Person.findAll() 
    } 

    @Path('/{id}') 
    PersonResource getResource(@PathParam('id') String id) { 
     new PersonResource(id:id) 
    } 

} 

回答

1

如果您的項目名稱是prubea3你應該這樣定義

@Path('/api/person') 
您的路徑

您的其他服務器可以運行另一臺機器。這對你並不重要。如果你的本地主機上運行的其他服務器:8080你應該這樣請求

http://localhost:8080/prueba3/api/person 

我希望它對你有用。

+0

'/ api'部分是強制性的嗎?我們可以將API更改爲其他內容嗎? – Jackie