//place this in global.h int HttpRetCode; int i=0; char depthVal[10]; char cTransactName[20000]; recursiveRedirect_open() { web_set_max_html_param_len("10000"); web_reg_save_param("cRedirectUrl", "LB=Location: ", "RB= ", "notfound=warning", "Search=Headers", LAST); web_reg_save_param("cTransactionName", "LB=https://Domain.com/", "RB= ", "Search=Headers", "notfound=warning", LAST); web_reg_save_param("httpCode", "LB=HTTP/1.1 ", "RB= ", "Search=Headers", "ORD=1", "notfound=warning", LAST); } recursiveRedirect_close() { HttpRetCode = atoi(lr_eval_string("{httpCode}")); lr_output_message("xReturnCode=%d", HttpRetCode); if(HttpRetCode == 302)//If redirect { i++; web_reg_save_param("cRedirectUrl", "LB=Location: ", "RB= ", "Search=Headers", "notfound=warning", LAST); web_reg_save_param("cTransactionName", "LB=https://https://Domain.com/", "RB= ", "Search=Headers", "notfound=warning", LAST); web_reg_save_param("httpCode", "LB=HTTP/1.1 ", "RB= ", "ORD=1", "notfound=warning", LAST); sprintf(cTransactName, "Redirect_depth_%d_%s", i,lr_eval_string("{cTransactionName}")); lr_start_transaction(cTransactName); web_url(cTransactName, "URL={cRedirectUrl}", "Mode=HTTP", LAST); lr_end_transaction(cTransactName, LR_AUTO); HttpRetCode = web_get_int_property(HTTP_INFO_RETURN_CODE); recursiveRedirect_close(); } else { return; }
//In your action file
Place this in the beginning of the action file
web_set_option(
"MaxRedirectionDepth"
,
"0"
, LAST );
//This is the key
recursiveRedirect_open();
recursiveRedirect_close();
深圳湖北籍软件测试群 275212937