support all kinds of response data type