현재 쉘 스크립트를 통해 웹 페이지의 일부 매개변수를 변경하는 스크립트를 작성하려고 합니다. 문제 없이 텍스트 상자의 값을 변경할 수 있지만 적용 버튼을 "누르는" 방법을 알 수 없는 것 같습니다.
보시다시피 마지막에 적용 버튼을 눌러야 하므로 값을 변경하는 방법입니다.
setJitterDelay()
{
rate=${1}
if [ "${rate}" == "low" ]; then
((htmlJitterNegDelta = 5))
((htmlJitterPosDelta = 5))
((htmlJitterDelayMax = 10))
jDelta=5
else
if [ "${rate}" == "med" ]; then
((htmlJitterNegDelta = 25))
((htmlJitterPosDelta = 25))
((htmlJitterDelayMax = 50))
jDelta=25
else
if [ "${rate}" == "high" ]; then
((htmlJitterNegDelta = 50))
((htmlJitterPosDelta = 50))
((htmlJitterDelayMax = 100))
jDelta=50
else
echo "error: low, med, high not selected! Skipped..."
return
fi
fi
fi
### APPLY BUTTON
}
저는 Firebug를 사용하여 어떤 값을 변경해야 하는지 이해하고 "적용" 버튼은 다음과 같습니다.
<input id="appFlowBw" type="submit" value="Apply" name="appFlowBw">
<form action="http://wanemu/XGEM_REV_BW_FLOW?blade=1&profile=0" method="post" name="rev_bw_form"></form>
입력은 소스 코드의 양식 내부에 있습니다.
<TR>
<TD colspan="8"></TD>
<TD><INPUT type="submit" name="appFlowBw" id="appFlowBw" value="Apply" disabled></TD>
</FORM>
하지만 지금은 이 버튼을 "누르는" 방법을 모르겠습니다.
내 문제를 이해하고 도움을 줄 수 있기를 바랍니다.
//편집: 양식 추가
답변1
이 버튼을 누르면 브라우저가 해당 양식의 모든 값을 요청 본문의 페이로드로 사용하여 서버에 POST 요청을 제출하게 됩니다.
따라서 쉘 스크립트에서 이 클릭의 효과를 재현하려면 POST 요청에 전달된 형식으로 데이터를 빌드한 다음 POST를 서버에 제출하여 버튼 누름을 시뮬레이션해야 합니다.
다음을 사용하면 이 작업을 쉽게 수행할 수 있습니다 curl
.POST 요청을 수행하기 위한 cURL 명령줄 구문은 무엇입니까?
예:
curl --data "param1=value1¶m2=value2" http://example.com/resource.cgi