implement post request support
create common option function
add comments