programing

"net:"을 가져오는 중:일부 AJAX 호출에서 ERR_BLOCKED_BY_CLIENT" 오류가 발생했습니다.

magicmemo 2023. 2. 25. 20:52
반응형

"net:"을 가져오는 중:일부 AJAX 호출에서 ERR_BLOCKED_BY_CLIENT" 오류가 발생했습니다.

최근에 깨달은 것은 애드블로커 확장 기능(adBlocker Plus 등)이 일부 Ajax 콜을 차단한다는 것입니다.콘솔에 다음과 같은 오류가 표시됩니다.

GET http://localhost/prj/conn.php?q=users/list/ net::ERR_BLOCKED_BY_CLIENT 

일부 Ajax 콜은 차단되지만 다른 콜은 차단되지 않는 이유와 그 원인은 무엇입니까?사용자에게 애드블로커를 끄라고 지시하는 것 외에 다른 회피책이 있습니까?

AdBlockers에는 보통 몇 가지 규칙이 있습니다.즉, URI를 특정 유형의 표현에 대해 대조합니다(이 경우 DOM을 식에 대해 대조하는 경우도 있습니다만, 이 경우는 문제가 되지 않습니다).

아주 작은 텍스트(URI)에서만 동작하는 규칙과 표현식을 가지면 잘못된 긍정이 생기기 쉽습니다.

사용자에게 (적어도 사이트에서) 확장 기능을 해제하도록 지시하는 것 외에 확장 기능에 대한 충분한 세부 정보를 제공하는 경우 확장 기능을 가져와 차단한 규칙/표현식을 테스트할 수도 있습니다.원인을 특정하면 다른 URI를 사용하여 규칙의 트리거를 회피하거나 규칙을 작성한 팀에 잘못된 규칙 또는 지나치게 광범위한 규칙을 보고하거나 둘 다 할 수 있습니다.그 방법에 대해서는, 문서를 참조해 주세요.

예를 들어 AdBlock Plus에는 차단된 모든 항목과 차단을 트리거한 규칙을 한 페이지에 표시하는 차단 가능한 항목 보기가 있습니다.그리고 XHR 요청도 포함한 항목입니다.

차단 가능한 항목

URL에 "advert", "ad", "double click", "click" 등의 단어가 포함되어 있는 경우...

예를 들어 다음과 같습니다.

  • GET googleads.g.doubleclick.net/pagead/id
  • static.doubleclick.net/instream/ad_status.js

...그럼 애드 블로커가 차단합니다.

에 「」가 붙어 있는 300하고 AdBlock을 ERR_BLOCKED_BY_CLIENT

잠재적인 원인 목록에 PrivacyBadger 추가

당신의 URL에 키워드 배너가 포함되어 있으면 차단되는 경우가 있습니다.

이 문제로 인해 보초 호출이 실패하여 브레이브 브라우저의 용감한 광고 차폐를 비활성화하면 문제가 해결되었습니다.

같은 문제에 직면했습니다.Brave Browser를 사용하여 문제가 발생한 사이트에 대한 보호를 비활성화했습니다.

여기에 이미지 설명 입력

여기서 설명한 바와 같이 광고 또는 스크립트 차단을 수행하는 여러 확장자 외에도 다음과 같은 파일 이름으로 이러한 현상이 발생할 수 있습니다.

특히 AdBlock Plus에서는 문자열 "-300x600"으로 인해 리소스 로드 실패 ERR_BLOCKED_BY_CLIENT 문제가 발생합니다.

그림과 같이 일부 이미지는 이름에 '-300x600' 패턴이 있어 차단되었습니다. 이 텍스트 패턴은 AdBlock Plus의 식 목록 패턴과 일치합니다.

ERR_BLOCKED_BY_CLIENT 문제

제 경우 애드블로커가 아니라 비트디펜더 안티 트래커입니다.비활성화 시키면 다 괜찮아.

여기에 이미지 설명 입력

광고 차단이 있는 경우(브라우저 브라우저는 기본 차단 사용) 끄십시오.이건 내게 효과가 있었다.

URL 쿼리 파라미터의 순서를 바꾸는 것만으로 문제가 해결되었습니다(uBlock Origin 광고 차단 규칙은 그다지 견고하지 않은 것 같습니다).

제 경우 Avira의 "Avira Browser Safety"라는 Chrome 확장 기능과 Firefox 애드온이었습니다.버전 1.7.4에서 문제가 발생했습니다.저 같은 경우에는 gliffy.com이라는 사이트에 로그인해서 그림을 만들고 싶었는데 로그인 후 공백 페이지가 뜨더라고요.Chrome에서 F12(콘솔)를 사용하면 이러한 ERR_BLOCKED_BY_CLIENT(및 기타) 오류를 모두 볼 수 있습니다.

또한 Chrome을 흰색 URL 목록을 사용하여 헤드리스 모드(예: Puppeteer 또는 Ferum)로 실행하고 요청이 목록과 일치하지 않는 경우에도 이 오류가 발생할 수 있습니다.

Opera Blocker 등은 네트워크의 모든 파일/url을 체크합니다.그런 다음 목록과 비교합니다.이것은 EasyPrivacy와 EasyList입니다.여기에 파일/url이 있으면 가 금지됩니다.행운을 빌어요.

모든 addBlockers의 FilterLists를 찾습니다.

답변 감사합니다!그들은 저를 해결책으로 이끌었습니다.

제 요청을 포장한 서드파티 서버를 사용하여 부정행위를 했습니다.
확인해 주세요.
https://codetabs.com/cors-proxy/cors-proxy.html

GET "https://api.codetabs.com/v1/proxy?quest=your_blocked_url"

물론 자신의 서버로 포장하는 것이 좋습니다.

언급URL : https://stackoverflow.com/questions/23341765/getting-neterr-blocked-by-client-error-on-some-ajax-calls

반응형