abstract http request lesson 0