resp.Body.Close()

functions call decodeBody() have "defer resp.Body.Close()",so resp.Body.Close() may exec twice.