request/response reading works