如何为JSON主体创建自定义绑定



我正在使用play框架,我想为来自POST方法的JSON创建一个自定义绑定。我试图用@Global TypeBinder做到这一点,但这似乎只适用于当事情以表单编码的形式出现时(我正在挖掘Binder.java,它似乎不考虑POST主体进行绑定,并假设参数中有一个名称前缀用于数据)。

现在我采用的方法似乎已经过时了,所以我假设情况已经发生了变化。

public class GsonBinder implements TypeBinder<JsonObject> {
    public Object bind(String name, Annotation[] antns, String value, Class type) throws Exception {
        return new JsonParser().parse(value);
    }
}

按照您提到的源代码中的描述创建它。

一个不明显的点是handleJson中唯一参数的名称必须是body

最新更新