我有grails插件项目,我需要将其转换为webservice,以便我的php代码可以向新创建的webservice发出请求。
简而言之,我需要公开我的grails插件项目,以便我的基于php的应用程序可以发出请求。
是否支持从我的基于php的应用程序调用grails插件项目。
非常感谢任何想法。
感谢。
答案 0 :(得分:1)
插件可以独立开发和测试,但为了使用它们,它必须安装在主机应用程序中。
AFAIU,你有一个自定义插件,它有一些你想要作为web服务公开的XYZ服务。为此,您必须执行以下步骤:
BuildConfig.groovy
中定义插件)动机是创建一个deployable
组件(war
,ear
,jar
),它可以produce/expose
您的自定义服务作为Web服务。您可以从grails应用程序获得相同的结果,而不是grails插件,这只是一个打包的zip
存档。
答案 1 :(得分:0)
例如,您可以尝试使用grails Web服务;可以使用REST,你可以通过url调用你的grails应用程序,并可以通过POST,GET将参数传递给它,并在grails控制器上处理它们
您可以调用URL并处理URL映射上的URL参数:
例如,如果您通过某个URL调用grails应用程序:product /那么您将能够在grails应用程序上处理请求:
"/product/$id"(controller: "product", parseRequest: true) {
action = [GET: "show", PUT: "update", DELETE: "delete", POST: "save"]
在您的控制器中,您可以解析请求,如:
if( request.method == "GET" ){
println( "GET REQUEST RECEIVED" )
<......Some Code........>
render resultList as JSON
}else if( request.method == "POST" ){
println( "POST REQUEST RECEIVED" )
<......Some Code........>
render resultList as JSON
}
}
请求和响应可以用xml或JSON格式处理,请看:http://grails.org/doc/2.2.1/guide/webServices.html#REST