jquery. ajax, vue - resource, axios 차단기 구현 및 쿠키 소지

ajax 예비 필터 (요청 보 내기 전 설정):
$.ajaxPrefilter(function( options, originalOptions, jqXHR ) {
  // options       
  // originalOptions       Ajax         ,  ,  ajaxSettings       
  // jqXHR     jqXHR  
})

 
$. ajaxSetup 방법:
정의 와 용법
ajax Setup () 방법 은 미래의 AJAX 요청 에 기본 값 을 설정 합 니 다.문법
$.ajaxSetup({name:value, name:value, ... })

이 매개 변 수 는 하나 이상 의 이름 / 값 쌍 을 가 진 AJAX 요청 규정 설정 입 니 다.아래 표 에는 가능 한 이름 / 값: 이름 값 / 설명 async 불 값 이 있 습 니 다. 비동기 처리 여 부 를 표시 합 니 다.기본 값 은 true 입 니 다.beforeSend (xhr) 요청 을 보 내기 전에 실행 되 는 함수 입 니 다.cache 불 값 은 브 라 우 저 캐 시 요청 페이지 를 표시 합 니 다.기본 값 은 true 입 니 다.complete (xhr, status) 요청 이 완료 되 었 을 때 실행 되 는 함수 (요청 이 성공 하거나 실패 한 후에 모두 호출 됩 니 다. 즉, success 와 error 함수 이후).contentType 이 서버 에 데 이 터 를 보 낼 때 사용 하 는 콘 텐 츠 형식 입 니 다.기본 값 은 "application / x - ww - form - urlencoded" 입 니 다.context 는 모든 AJAX 와 관련 된 리 셋 함수 에 'this' 값 을 규정 합 니 다.data 는 서버 에 보 낼 데 이 터 를 규정 하고 있 습 니 다.dataFilter (data, type) 는 XML HttpRequest 의 원시 응답 데 이 터 를 처리 하 는 함수 입 니 다.dataType 이 예상 하 는 서버 응답 데이터 형식 입 니 다.error (xhr, status, error) 요청 이 실패 하면 실행 할 함수 입 니 다.global 불 값 은 전역 AJAX 이벤트 처리 프로그램 을 요청 할 지 여 부 를 규정 합 니 다.기본 값 은 true 입 니 다.ifModified 불 값 은 마지막 요청 이후 변경 사항 에 응답 할 때 만 요청 할 수 있 는 지 여 부 를 규정 합 니 다.기본 값 은 false 입 니 다.jsonp 는 jsonp 에서 반전 함수 의 문자열 을 다시 씁 니 다.jsonpCallback 은 jsonp 에서 리 셋 함수 의 이름 을 규정 합 니 다.password 는 HTTP 액세스 인증 요청 에 사용 할 암 호 를 규정 합 니 다.processData 불 값 은 요청 을 통 해 보 낸 데 이 터 를 검색 문자열 로 변환 할 지 여 부 를 규정 합 니 다.기본 값 은 true 입 니 다.scriptCharset 에서 요청 한 문자 집합 을 규정 합 니 다.success (result, status, xhr) 요청 이 성공 할 때 실행 되 는 함수 입 니 다.timeout 은 로 컬 요청 시간 초과 (밀리초 단위) 를 설정 합 니 다.traditional 불 값 은 매개 변 수 를 직렬 화 하 는 전통 스타일 을 사용 할 지 여 부 를 규정 합 니 다.type 에서 요청 한 형식 (GET 또는 POST) 을 지정 합 니 다.url 에서 요청 한 URL 을 보 냅 니 다.기본 값 은 현재 페이지 입 니 다.username 은 HTTP 액세스 인증 요청 에 사용 할 사용자 이름 을 지정 합 니 다.xhr 는 XML HttpRequest 대상 을 만 드 는 함수 입 니 다.
ajax 차단기 (ajax 요청 결과 일괄 처리):
$.ajaxSetup({
  complete: function(XMLHttpRequest, textStatus) {
    //XMLHttpRequest.responseJSON        
  }
})

 
ajax 는 쿠키 를 가지 고 있 습 니 다:
$.ajax({
  type: "post",
  url:"/url",
  dataType: "json",
  //  cookie
 xhrFields: {
    withCredentials: true
  },
  crossDomain: true,
  data:{},
  success:function(data){

  },
  error:function(e){
  }
})

 
쿠키 대량 처리:
$.ajaxPrefilter(function( options, originalOptions, jqXHR ) {
  //  cookie
  options.xhrFields = {
    withCredentials: true
  }
})

 
vue - resource 는 차단기 의 대량 처리 와 쿠키 휴대 를 실현 합 니 다.
Vue.http.interceptors.push(function(request, next) {
  //  cookie
  request.credentials = true;
  next((response) => {
    //response.bodyText       json   
    console.log(response.bodyText)
  })
})

 
axios 요청 차단기 및 응답 차단기 구현
axios 요청 차단기:
//axios     
axios.interceptors.request.use(function (config) {
 // return config; }, function (error) { // return Promise.reject(error); });

axios 응답 차단기:
//axios     
axios.interceptors.response.use(function (response) {
  //          
 return response; }, function (error) { // return Promise.reject(error); });

axios 쿠키 소지
axios.defaults.withCredentials = true;

 
다음으로 전송:https://www.cnblogs.com/yinian/p/8707798.html

좋은 웹페이지 즐겨찾기