V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
lesloli
V2EX  ›  问与答

关于 Go 语言的某个问题

  •  
  •   lesloli · 2018-06-27 10:32:57 +08:00 · 646 次点击
    这是一个创建于 2370 天前的主题,其中的信息可能已经有所发展或是发生改变。
    
    func echo(w http.ResponseWriter, r *http.Request) {
    	var dd map[string]interface{}
    	c, _ := upgrader.Upgrade(w, r, nil)
    
    	defer c.Close()
    	for {
    
    		mt, c_cmd, _ := c.ReadMessage()
    		if c_cmd != nil {
    
    			json.Unmarshal(c_cmd, &dd)
    			fmt.Println(dd)
    
    		}
    }
    

    我用 go 语言建立 websocket 连接处理信息,当读取到信息时赋值给 c_cmd 然后用 json.Unmarshal 转换成 map 类型, 测试的时候只有第一次收到信息可以转换成 map 类型,第二次收到信息后,输出的 dd 还是第一次的结果。 请问这是为什么

    1 条回复    2018-06-27 16:24:42 +08:00
    zjlletian
        1
    zjlletian  
       2018-06-27 16:24:42 +08:00
    err := json.Unmarshal(c_cmd, &dd),再判断一下 err
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1034 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 23:13 · PVG 07:13 · LAX 15:13 · JFK 18:13
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.