Fiddler 대 해석!죄송합니다. 가방 을 잘 잡 으 면 정말 하고 싶 은 대로 할 수 있 습 니 다.
Fiddler 의 저자
이 두 가 지 를 명심 하 시기 바 랍 니 다.다음은 Fiddler 의 강력 한 곳 중 하나 인 Fiddler Script 를 소개 합 니 다.
포럼 에는 Fiddler 의 사용 튜 토리 얼 이 많 으 니 더 이상 말 하지 않 겠 습 니 다.하지만 가장 강력 한 스 크 립 트 기능 에 대해 서 는 아무 도 말 하지 않 았 다!
Fiddler 는 Http Request 와 Response 를 자동 으로 수정 할 수 있 는 스 크 립 트 파일 을 포함 하고 있 습 니 다. 그러면 수 동 으로 '정지점' 을 수정 할 필요 가 없습니다. 실제로 스 크 립 트 파일 CustomRules. js 입 니 다. 위치: C: \ \ Documents and Settings \ \ [your user] \ My Documents \ \ Fiddler 2 \ \ Scripts \ \ CustomRules. js 에서 도 Fiddler 에서 CustomRules. js 파일 을 열 수 있 습 니 다. Fiddler 를 시작 하고 메뉴 Rules - > Customize Rules 를 누 르 십시오... Fiddler Script 의 공식 도움말 문 서 는 열심히 읽 어야 합 니 다. 주 소 는:http://www.fiddler2.com/Fiddler/dev/ScriptSamples.asp
상식: Fiddler Script 는 JScript. NET 언어 로 쓴 것 그렇다면 Fiddler Script 는 도대체 무슨 소 용이 있 습 니까?제 가 여기 서 여러분 이 틀림없이 겪 었 을 문제 들 을 열거 하 겠 습 니 다.
장면 1: 하나의 비용 지불 검증, 비용 지불 여 부 는 json 으로 돌아 갑 니 다.안에 타임 스탬프 와 false 가 있 습 니 다.시간 스탬프 와 클 라 이언 트 가 일치 하지 않 으 면 해독 에 실 패 했 습 니 다.그러면 제 이 슨 의 일부 인자 만 바 꾸 고 클 라 이언 트 에 게 돌아 갈 수 있 는 기능 이 있 을 까?그래서 우 리 는 script 을 사용 해 야 합 니 다!코드 는 다음 과 같 습 니 다. 예 를 들 어 json 이 이 내용 인 경우 baidu. com 은 [name: 나 는 해독 을 좋아 하고 비용 을 지불 합 니 다: false] 를 되 돌려 주 었 습 니 다.
if (oSession.fullUrl.Contains("http://www.baidu.com"))
{
// Response Body、Request Body JSON , JSONObject
var responseStringOriginal = oSession.GetResponseBodyAsString();
var responseJSON = Fiddler.WebFormats.JSON.JsonDecode(responseStringOriginal);
var requestStringOriginal=oSession.GetRequestBodyAsString();
var requestJSON = Fiddler.WebFormats.JSON.JsonDecode(requestStringOriginal);
){ // , type 1,
responseJSON.JSONObject[' '] = "true";
// Response Body
var responseStringDestinal = Fiddler.WebFormats.JSON.JsonEncode(responseJSON.JSONObject);
oSession.utilSetResponseBody(responseStringDestinal);
}
}
}
상기 코드 를 통 해 baidu 에서 데 이 터 를 되 돌려 줄 때마다 자동 으로 비용 을 true 로 바 꾸 어 해독 효 과 를 얻 을 수 있 습 니 다.
장면 2: 저 는 request 의 Body 안의 일부 인 자 를 수정 하고 싶 습 니 다. 매번 에 정지점 을 내 린 다음 에 수정 한 다음 에 제출 하고 싶 습 니 다. 항상 네트워크 시간 이 초과 되 거나 앱 이 시간 을 초과 합 니 다.이거 어 떡 하지?설마 손 으로 만 속 도 를 낼 수 있 단 말 인가?
if(oSession.uriContains("http://www.baidu.com")) { var strBody = oSession. GetRequestBodyAsString (); / Request 의 body 문자열 가 져 오기 strBody = strBody. replace ("false", "true"); / / 정규 표현 식 이나 replace 방법 으로 string 을 수정 하고 false 를 true 로 변경 합 니 다. FiddlerObject. alert (strBody); / 수 정 된 body 를 확인 하기 위해 대화 상 자 를 연주 합 니 다. oSession. utilSetRequestBody (strBody); / 수 정 된 body 를 Request 에 다시 씁 니 다. }
장면 3: 저 는 쿠키 를 수정 하고 비용 을 지불 한 쿠키 로 바 꾸 려 고 합 니 다. 그러나 실시 간 으로 생 성 되 어야 합 니 다. 손 으로 속 도 를 낼 수 없습니다. 어떻게 해 야 합 니까?
if (oSession.HostnameIs('www.baidu.com') && oSession.uriContains('pagewithCookie') && oSession.oRequest.headers.Contains("Cookie")) { var sCookie = oSession.oRequest["Cookie"]; // replace 방법 이나 정규 표현 식 방법 으로 쿠키 의 string 을 조작 합 니 다. sCookie = sCookie. Replace ("지불 = false", "지불 = true"); oSession.oRequest["Cookie"] = sCookie;
장면 4: 그 가 구체 적 으로 어떤 사 이 트 를 요 청 했 는 지 알 고 싶 습 니 다. 검색 속도 가 너무 느 립 니 다. 여과 도 느 립 니 다.
if (oSession.HostnameIs("www.baidu.com")) { oSession["ui-color"] = "red"; }
장면 5: 특정한 인터페이스의 데 이 터 를 로 컬 에 자동 으로 저장 하려 고 하 는데 어떻게 해 야 실현 할 수 있 습 니까?
if (oSession.fullUrl.Contains("www.baidu.com/playurl/v1/") ){ oSession. utilDecodeResponse (); / / 저 장 된 요청 을 제거 하 는 데 오류 가 있 을 수 있 습 니 다. var fso; var file; fso = new ActiveXObject("Scripting.FileSystemObject"); //파일 저장 경로, 사용자 정의 가능 file = fso.OpenTextFile("D:\\Sessions.txt",8 ,true, true); //file.writeLine("Response code: " + oSession.responseCode); file.writeLine("Response body: " + oSession.GetResponseBodyAsString()); file.writeLine(""); file.close(); }
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 이상 은 Fiddler script 이 자주 사용 하 는 기능 입 니 다. 여러분 께 무료 로 바 칩 니 다. 직접 복사 해서 사용 할 수 있 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Nginx를 사용하여 도메인을 포트 번호로 리디렉션하고 SSL을 설정하는 방법은 무엇인가요?nano 또는 vim에서 이 파일 열기/etc/nginx/nginx.conf nginx.conf를 업데이트한 후 이 명령을 적용합니다. nginx.conf 테스트sudo nginx -tnginx 서비스 다시 시작su...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.