2013-11-21 2 views
2

FiddlerScript에서 작업하면서 OnBeforeResponse 메서드에서 변경된 사항이 있습니다.이 메서드는 다른 컴퓨터에서 작동 했었지만 (지금은 오래 동안 사용되었지만) 지금은 작동하지 않습니다. 나는 그것을 다음의 기본적인 예제로 끓여 냈다. 피들러 샌드 박스 페이지에서 utilReplaceInResponse가 브라우저에서 변경 사항을 표시하지 않습니다

, 나는 항목 URL 당 단어 와 단어 항목 당을 대체하기 위해 노력하고있어 : 원본과 수정 http://webdbg.com/sandbox/shop/

피들러 스크립트 파일은 두 개의 새로운 라인을 가지고. 1은 세션을 디코드하고 1은 내가 본 적이있는 모든 예와 나에게 잘 맞았던 응답에 따라 바꿉니다.

static function OnBeforeResponse(oSession: Session) { 
    oSession.utilDecodeResponse(); //Added this. 
    oSession.utilReplaceInResponse("per item", "per item"); //Added this 

    if (m_Hide304s && oSession.responseCode == 304) { 
     oSession["ui-hide"] = "true"; 
    } 
} 

위의 fiddlerscript 파일을 저장하고 페이지를 새로 고친 후 브라우저에 대체 표시가 표시되지 않습니다. Fiddler 검사관을 보면 이 표시됩니다. 즉, OnBeforeResponse가 실제로 어떤 시점에서 호출되고 utilReplaceInResponse도 실행 중임을 의미합니다. 나는 모든 응답 후 중단 점을 넣을 경우

추가 괴벽 (-> 규칙 - 피들러> 자동 중단 -> 응답 후)을하고 페이지를 새로 고침 응답은 예상 나는 완료과에 실행을 클릭으로 중단 점을 히트 브라우저는을 대신 표시합니다. 그래서 : 중단 점 없음, 페이지는 렌더링 된 페이지에서 대체물을 보여주지 않습니다. 중단 점을 사용하고 단순히 완료까지 실행하면 페이지에 대체 항목이 표시됩니다.

페이지가 Fiddler 속성에 표시 되더라도 브라우저에 변경 사항이 표시되지 않는 이유는 무엇입니까? 아니면 중단 점이 설정되어 있습니까?

. 기본 도구 모음에서 선택한 스트림 옵션을했다

해결책은 - 그것을 해제하고 예상대로 작동합니다.

.

환경 : 들러 v2.4.5.3 - 64 비트 AMD64, VM ​​: 114.00mb, WS : 132.00mb의 .NET 2.0.50727.5472 Winnt는 6.1.7601 SP1

답변

5
IE9와 Chrome31 모두 볼

자신을 해결했습니다.

나는 도구 모음에서 스트림 옵션을 사용하도록 설정했습니다. (Doh!) OnBeforeResponse의 대체 항목을 예상대로 선택 취소합니다.

그것은 새로운 피들러 버전의 기능을 수 있지만 나는 나의 발견을 얻기 위해 다음 줄을 추가했다/대체 할 수
0

작동합니다 :

oSession.utilDecodeResponse(); 
관련 문제