Java JPOS Restful API发送和接收数据

Java JPOS Restful API发送和接收数据,java,api,restful-url,jpos,Java,Api,Restful Url,Jpos,我从配置JPOS中的RESTFul API 问题是我无法从客户端接收数据,但我可以向客户端发送数据。 在Echo.java类中,我可以通过以下代码发送数据: package org.jpos.rest; import javax.ws.rs.GET; import javax.ws.rs.Path; import javax.ws.rs.Produces; import javax.ws.rs.core.MediaType; import javax.ws.rs.core.Response;

我从配置JPOS中的RESTFul API
问题是我无法从客户端接收数据,但我可以向客户端发送数据。
Echo.java
类中,我可以通过以下代码发送数据:

package org.jpos.rest;

import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;
import java.util.HashMap;
import java.util.Map;

@Path("/echo")
public class Echo {
    @GET
    @Produces({MediaType.APPLICATION_JSON})
    public Response echoGet() {
        Map<String, Object> resp = new HashMap<>();
        resp.put("success", "true");
        resp.put("Name", "Hamid");
        resp.put("Family", "Mohammadi");
        Response.ResponseBuilder rb = Response.ok(resp, MediaType.APPLICATION_JSON).status(Response.Status.OK);
        return rb.build();
    }
}
package org.jpos.rest;
导入javax.ws.rs.GET;
导入javax.ws.rs.Path;
导入javax.ws.rs.products;
导入javax.ws.rs.core.MediaType;
导入javax.ws.rs.core.Response;
导入java.util.HashMap;
导入java.util.Map;
@路径(“/echo”)
公共类回声{
@得到
@产生({MediaType.APPLICATION_JSON})
公众响应echoGet(){
Map resp=新的HashMap();
分别出售(“成功”、“真实”);
分别出售(“名称”、“哈米德”);
分别出售(“家庭”、“穆罕默德”);
Response.ResponseBuilder rb=Response.ok(resp,MediaType.APPLICATION_JSON).status(Response.status.ok);
返回rb.build();
}
}

如何从客户端接收数据?没有用于查找请求及其数据的请求参数

感谢@Sabir Khan 我将代码更改为:

    @Path("/echo")
    public class Echo {
        @PUT
        @Produces({MediaType.APPLICATION_JSON})
        @Consumes(MediaType.TEXT_PLAIN)
        @Path("/{name}/{family}")
        public Response echoGet(
                @PathParam("name") String name,
                @PathParam("family") String family,
                String Desc
        ) {
            Map<String, Object> resp = new HashMap<>();
            resp.put("success", "true");
            resp.put("Name", name);
            resp.put("Family", family);
            resp.put("Desc", Desc);
            Response.ResponseBuilder rb = Response.ok(resp,
MediaType.APPLICATION_JSON).status(Response.Status.OK);
            return rb.build();
        }
    }
@Path(“/echo”)
公共类回声{
@放
@产生({MediaType.APPLICATION_JSON})
@使用(MediaType.TEXT\u PLAIN)
@路径(“/{name}/{family}”)
公众回应(
@PathParam(“名称”)字符串名称,
@PathParam(“族”)字符串族,
字符串描述
) {
Map resp=新的HashMap();
分别出售(“成功”、“真实”);
分别输入(“名称”,名称);
分别出售(“家庭”,家庭);
分别投入(“说明”,说明);
Response.ResponseBuilder rb=Response.ok(resp,
状态(Response.status.OK);
返回rb.build();
}
}
并将数据发送到RESTFul API,如下所示:

如果您无法接收客户数据,您如何响应?您显示的代码不接受任何输入,它只生成json响应而不接受任何输入。您是否编写了任何其他需要输入的方法&客户端提供的输入没有到达您的服务器?如果是这样的话,请分享代码。@SabirKhan这段代码来自jpos网站的pdf。我很困惑。jpos站点描述了上述调用的方法,比如-
curl-i-H“Accept:application/json”-H“Content Type:application/json”
——即没有输入json。那么为什么要给它一个json输入呢?方法
echoGet()
不接受任何输入。我想,您的代码工作得非常好。问题是什么?看