C# 응용 프로그램에서 captcha를 가져 오는 중 다시 구현하려고합니다. 문제가 있습니다. JS에 대한 경험이 없기 때문입니다.jurassic js 코드로 평가하여 html을 수정합니다.
GET-request는 기본적으로 captcha src 태그가 포함 된 데이터를 반환합니다. C# 응용 프로그램에서
function() {
var h = window.location.href;
if (h.indexOf("mytag") + 1) {
var scr = $("#capchaVisual").attr("src");
$("#capchaVisual").attr("src", scr + "data:image/jpeg;base64,/9j/MYCAPTCHADECODED...");
}
내 단계 : WebClient 및 JavaScriptSerializer를 통해 데이터 및 스크립트
- 로드 JSON
... <div class="context"><img src="" id="capchaVisual" alt="loading..."></div> ...
는 또한 다음과 같이 보안 문자를 채우고 일부 자바 스크립트를 반환합니다. 끝난. 결과는 jsonobject 에 저장, 답장에는 html이 있고 답변 .e - 실행할 스크립트.
봅니다 쥬라기를 통해로드 된 스크립트를 실행합니다 : ReferenceError가 :
함께 실패 창이를 정의되어 있지 않습니다.var engine = new Jurassic.ScriptEngine(); engine.EnableDebugging = true; //engine.SetGlobalValue("window", answer.data); foreach (var line in answer.e) { var evalresult = engine.Evaluate(line); string t = evalresult.ToString(); }
3 행의 주석을 없애려면 anotwer 오류가 발생합니다. TypeError : undefined를 객체으로 변환 할 수 없습니다.