js 이상 포획

1843 단어
1. js 이상 포획 의 두 가지 방식:
1、try...catch 2、window.onerror
try...catch
  • try... catch 는 실행 중인 오류 만 캡 처 할 수 있 고 문법 오 류 를 캡 처 할 수 없습니다.
  • 잘못된 정보, 스 택, 잘못된 파일, 줄 번호, 열 번 호 를 얻 을 수 있 습 니 다.
  • 도 구 를 통 해 모든 function 블록 과 파일 을 try, catch 에 추가 해 야 합 니 다. 이 단계 에서 더 많은 정적 정 보 를 입력 할 수 있 습 니 다.

  • window.onerror
  • 문법 오 류 를 포착 할 수도 있 고 운행 시 오 류 를 포착 할 수도 있다.
  • 잘못된 정보, 스 택, 잘못된 파일, 줄 번호, 열 번 호 를 얻 을 수 있 습 니 다.
  • 현재 페이지 에서 실 행 된 js 스 크 립 트 의 오류 만 포착 할 수 있 습 니 다. 예 를 들 어 브 라 우 저 플러그 인의 자바 script, 또는 플래시 가 던 진 이상 등 입 니 다.도 메 인 을 뛰 어 넘 는 자원 은 특수 한 머리 지원 이 필요 합 니 다.

  • 2. 도 메 인 을 뛰 어 넘 는 오 류 는 어떻게 캡 처 합 니까?
    외부 에서 불 러 온 JS 가 이상 을 던 졌 을 때 안전 상의 이유 로 js 오류 정 보 는 사용자 이름, 권한 알림 등 민감 한 정 보 를 포함 할 수 있 습 니 다. 이러한 정 보 를 차단 하고 싶 습 니 다.현재 도 메 인 을 뛰 어 넘 는 장면 에서 이러한 안전 제한 이 발생 합 니 다. window. onerror 는 구체 적 인 오류 정 보 를 얻 을 수 없고 Script error 0 만 얻 을 수 있 습 니 다.
    해결 방법
  • 응답 헤드 증가 access - control - allow - origin
  • 각 function 패키지 try - catch
  • 절단면 패키지 입구 함수, try - catch
  • 1. 응답 헤드 증가 access - control - allow - origin 연속 단계 ① Access - Control - Allow - Origin header 에 cros 를 허용 하 는 도 메 인 을 설정 합 니 다.
    //nginx    :
    server{
            listen 80;
            server_name static.fourb.info;
                        
            location / {
                root E:\FB\static-site\static;
                proxy_pass http://static.fourb.info:8080;
                access_log  logs/fb.log main;
            }
                        
            location ~ \.(css|doc|eip|exe|gif|ico|jpg|js|mp3|png|swf|xml|txt|bm|html|htm|json)$ {
                root E:\FB\static-site\static;
                add_header 'Access-Control-Allow-Origin' "*";
                expires 7d;
            }
        }
    

    ② script 이 외부 체인 을 도입 하 는 탭 은 crossorigin 의 속성 을 하나 더 추가 해 야 합 니 다.
    2. 비동기 적 인 오 류 는 어떻게 포착 합 니까?

    좋은 웹페이지 즐겨찾기