解析json并且无法访问javascript对象

时间:2016-03-01 08:08:28

标签: json gson

我将一个json对象从java对象传递给客户端,时间和值作为gson的属性

this.template.convertAndSend("/topic/123", gson.toJson(object, type));

在客户端我有以下代码,其中json对象数据存储在有效负载的主体中,但是我无法使用obj.time或obj.value访问属性,它告诉我在它之后是未定义的解析后,我尝试显示整个'obj'本身,但格式似乎很好:

var subscription_callback1 = function(payload) {
        var obj = JSON.parse(payload.body);
        alert(obj);
};

使用alert(obj)输出

{"time":"3:00:34","value":"7989797"}

1 个答案:

答案 0 :(得分:1)

没关系解决了。因为我正在使用Spring 4框架传输STOMP协议消息。我选择使用Jackson2消息转换器而不是直接使用gson,它似乎工作

@Configuration
@EnableWebSocketMessageBroker
public class MessageBrokerConfigurer extends AbstractWebSocketMessageBrokerConfigurer {
@Override
public boolean configureMessageConverters(List<MessageConverter> messageConverters) {
    messageConverters.add(new MappingJackson2MessageConverter());
    return true;
}

然后我直接将我的java对象放入send函数,而不是使用gson将其转换为上面的

this.template.convertAndSend("/topic/123", event)