在java appengine中的app引擎应用程序/ json有效负载读取

时间:2014-12-16 15:08:12

标签: java google-app-engine post

如何读取作为发布到GAE java应用程序的有效负载的字符串/字节数组?

有没有一种简单的方法可以在不使用Jackson / jersey或类似库的情况下获取这些字节?

Angular方使用类似的东西:

 $http({
        method : 'POST',
        url : 'http://APPID.appspot.com/api/get-reference-locales-for',
        data : {
            'param' : value,
            'param2' : value2
        })

Java方面

protected void doPost(HttpServletRequest req, HttpServletResponse resp)
            throws ServletException, IOException { ...

我希望有一种简单的方法可以从{'param':1,'param':2}对象中获取字符串req,但我似乎可以找到它。

1 个答案:

答案 0 :(得分:1)

基于这里的答案: Getting request payload from POST request in Java servlet

我现在正在使用:

public String getRequestPayload(HttpServletRequest req) {
    StringBuilder buffer = new StringBuilder();
    BufferedReader reader;
    String data = "";
    try {
        reader = req.getReader();
        String line;
        while ((line = reader.readLine()) != null) {
            buffer.append(line);
        }
        data = buffer.toString();   
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    return data;
}