parser.add_argument('-m','--inmem',action='store_true',help='Store resubmitted requests in memory without storing them in the data file')
parser.add_argument('-u','--unique',action='store_true',help='Only resubmit one request per endpoint (different URL parameters are different endpoints)')
parser.add_argument('-p','--uniquepath',action='store_true',help='Only resubmit one request per endpoint (ignoring URL parameters)')
parser.add_argument('-c','--cookies',nargs='*',help='Apply a cookie to requests before submitting')
parser.add_argument('-d','--headers',nargs='*',help='Apply a header to requests before submitting')
parser.add_argument('-o','--copycookies',help='Copy the cookies used in another request')
args=parser.parse_args(cargs)
headers={}
cookies={}
clear_cookies=False
ifargs.headers:
forhinargs.headers:
k,v=h.split('=',1)
headers[k]=v
ifargs.copycookies:
reqid=args.copycookies
req=client.req_by_id(reqid)
clear_cookies=True
fork,vinreq.cookie_iter():
cookies[k]=v
ifargs.cookies:
forcinargs.cookies:
k,v=c.split('=',1)
cookies[k]=v
ifargs.uniqueandargs.uniquepath:
raiseCommandError('Both -u and -p cannot be given as arguments')
# Get requests to submit
#reqs = [r.copy() for r in client.in_context_requests()]
reqs=client.in_context_requests()
# Apply cookies and headers
forreqinreqs:
ifclear_cookies:
req.headers.delete("Cookie")
fork,vincookies.items():
req.set_cookie(k,v)
fork,vinheaders.items():
req.headers.set(k,v)
conf_message="You're about to submit %d requests, continue?"%len(reqs)