Generalising HTTP requester