refactor HTTPSession