programing

jQuery Ajax 요청을 유발하는 Javascript를 찾는 방법은 무엇입니까?

luckcodes 2021. 1. 17. 11:31

jQuery Ajax 요청을 유발하는 Javascript를 찾는 방법은 무엇입니까?


Ajax 요청이 트리거 된 Javascript 코드를 찾는 방법은 무엇입니까? 방화범의 콘솔에서 우리는 파일과 줄 번호를 식별 할 수 있지만 우리가 사용하는 경우 $.ajax또는 $.postjQuery와 일부 유사한 기능, 그것은 단지 방화범의 콘솔에서 jQuery 라이브러리 파일을 기록합니다. jQuery 함수의 실제 트리거 지점을 얻는 방법이 있습니까?


가지고 Chrome있는 DevTool 에서 사용하십시오 Sources.

이것을 열면 오른쪽에 표시됩니다. XHR/fetch Breakpoints확인하면 Any XHR스크립트가 사용하는 모든 요청에서 일시 중지됩니다 (요청에 사용 XMLHttpRequest되지 않는 jsonp요청).

경우 Any XHR옵션 (만 사용할 수 없습니다 No Breakpoints다음 목록에) 당신은 클릭해야 +휴가 Break when URL contains:필드를 비워과 히트 입력합니다. 그러면 Any XHR옵션 이 생성됩니다 . ( 이 정보에 대해 Yasmin French 에게 감사드립니다 )

으로 Call Stack(또한 오른쪽에) 당신은 요청의 근원이 무엇인지 볼 수 있습니다.

그러나 내가 언급했듯이 이것을 jsonp추적하려는 경우 요청 이 중단되지는 않습니다 jQuery. 최소화 되지 않은 버전을 사용하고 (또는 축소 된 버전의 소스 맵을 포함) 올바른 부분의 소스에 중단 점을 설정해야합니다. 이 부분을 찾으려면 다음 단계를 사용할 수 있습니다.

  1. 크리에이트 jsonp코드에서 요청을이 장소에서 중단 점을 설정합니다.
  2. 디버거로 전환 할 수 있도록 코드의이 부분을 호출하십시오.
  3. 를 사용하면 Step into이제 jQuery 코드에 있어야합니다. 이제 중단 점을 배치하면 모든 jsonp요청에 대해 Chrome이 중지됩니다 .

참고 : 때때로 Chrome (아마도 베타 또는 개발 버전 에서만 )은 다시로드 할 때 중단 점을 잃는 경향이 있으므로 다시로드 할 때 여전히 존재하는지 확인해야합니다.


이전 Chrome 버전에는 없었을 수 있지만 버전 56.0.2924.87에는 html / js 파일과 요청을 시작한 파일 내의 정확한 줄을 알려주는 '초 기자'열이 있습니다.

이 요청은 XHR, jpg, css 또는 기타에 대한 http 요청 일 수 있습니다.

요청을 추적하는 데 매우 매끄럽고 유용합니다.

사용 방법은 다음과 같습니다.

  1. 개발자 콘솔을 열려면 "F12"를 누르십시오.
  2. 각 요청에서 "Initiator"열을 찾으면 "jquery.min.js : 4"를 볼 수 있습니다. 이는 요청이 "jquery.min.js"파일의 네 번째 줄에서 시작되었음을 의미합니다.

여기에 이미지 설명 입력


chrome과 firefox / firebug에서는 .always () 또는 ajax 호출의 beforeSend 핸들러에서 console.trace ()를 사용하여 누가 호출했는지 확인할 수 있습니다.

참조 URL : https://stackoverflow.com/questions/17208268/how-to-find-out-which-javascript-causes-a-jquery-ajax-request