fix some error handle & try to implement the http on request method