fix several bugs

convert response object to hash when save to cache