>  기사  >  백엔드 개발  >  javascript - ajax 비동기 문제

javascript - ajax 비동기 문제

WBOY
WBOY원래의
2016-08-04 09:19:55915검색

javascript - ajax 비동기 문제

실례합니다. ajax 返回data再执行函数里面的代码에 콜백 기능이 있나요? 아니면 不等data返回就直接执行函数里面的代码에 있나요?

두 번째 상황이라면 비동기로 인한 문제를 어떻게 피할 수 있을까요?

답글 내용:

javascript - ajax 비동기 문제

실례합니다. ajax 返回data再执行函数里面的代码에 콜백 기능이 있나요? 아니면 不等data返回就直接执行函数里面的代码에 있나요?

두 번째 상황이라면 비동기로 인한 문제를 어떻게 피할 수 있을까요?

성공 콜백 함수는 데이터가 성공적으로 반환된 후에 실행되는 함수로, 데이터를 얻은 후에 실행된다는 의미입니다.
기타 상황에는 beforeSend(전송 전), 완료(요청 후)가 포함됩니다. 완료), 오류(요청 오류) 콜백

비동기성으로 인해 발생하는 문제에 대해 잘 이해가 되지 않습니다. 예를 들어주실 수 있나요?

반드시 데이터를 반환하고 함수에 있는 코드를 실행 = = 데이터를 반환하지 않고 실행 = = 오류를 기다리는 것은 아닌가요?

ajax(비동기 JavaScript 및 XML)을 나타냅니다. AJAX = Asynchronous JavaScript and XML먼저 질문에 답해드리자면, 성공한 경우에는 데이터가 성공적으로 반환될 때까지 함수가 실행되지 않습니다. 반환이 없으면 잠시 동안 대기합니다. 이 시간은 일반적으로 네트워크 지연 시간입니다. 직접 설정할 수도 있습니다.

훌륭한

프레임워크 중 jquery에 대해 간단히 이야기해 보겠습니다. ajax보통은 네임밸류 형태로 이렇게 사용합니다.

<code>$.ajax({name:value, name:value, ... })</code>
  • 요청이 비동기적으로 처리되는지 여부를 나타내는 부울 값입니다. 기본값은 true입니다. asyncfalse로 설정하고 비동기식을 끄면 요청으로 인해 인터페이스가 매우 중단됩니다.

  • 요청을 보내기 전에 실행하는 기능입니다. beforeSend(xhr)

  • cache 브라우저가 요청한 페이지를 캐시하는지 여부를 나타내는 부울 값입니다. 기본값은 true입니다.

  • 요청이 완료되면 실행되는 함수(요청이 성공하거나 실패한 후, 즉 성공 및 오류 함수 이후에 호출됨). complete(xhr,status)

  • contentType 서버에 데이터를 보낼 때 사용되는 콘텐츠 유형입니다. 기본값은 "application/x-www-form-urlencoded"입니다.

  • context는 모든 AJAX 관련 콜백 함수에 대해 "this" 값을 지정합니다.

  • 서버로 전송할 데이터를 지정합니다. data

  • dataFilter(data,type) XMLHttpRequest 원시 응답 데이터를 처리하는 데 사용되는 함수입니다.

  • 예상되는 서버 응답의 데이터 유형입니다. dataType

  • 요청 실패 시 실행되는 함수입니다. error(xhr,status,error)

  • 요청에 대해 전역 AJAX 이벤트 핸들러를 트리거해야 하는지 여부를 지정하는 전역 부울 값입니다. 기본값은 true입니다.

  • 마지막 요청 이후 응답이 변경된 경우에만 요청이 성공할지 여부를 지정하는 ifModified 부울 값입니다. 기본값은 거짓입니다.

  • jsonp 콜백 함수 문자열을 jsonp로 다시 작성합니다.

  • jsonpCallback은 jsonp에 콜백 함수의 이름을 지정합니다.

  • password는 HTTP 액세스 인증 요청에 사용되는 비밀번호를 지정합니다.

  • processData 요청을 통해 전송된 데이터를 쿼리 문자열로 변환할지 여부를 지정하는 부울 값입니다. 기본값은 true입니다.

  • scriptCharset는 요청된 문자 집합을 지정합니다.

  • 요청 성공 시 실행되는 함수입니다. success(result,status,xhr)

  • 로컬 요청 시간 초과(밀리초)를 설정합니다. timeout

  • 전통적인 부울 값으로, 전통적인 스타일의 매개변수 직렬화를 사용할지 여부를 지정합니다.

  • 요청 유형(GET 또는 POST)을 지정합니다. type

  • 요청을 보낼 URL을 지정합니다. 기본값은 현재 페이지입니다. url

  • username은 HTTP 액세스 인증 요청에 사용되는 사용자 이름을 지정합니다.

    이것은 사용자 로그인과 비밀번호를 시뮬레이션할 수 있습니다.

  • Xhr XMLHttpRequest 객체를 생성하는 데 사용되는 함수입니다.

빨간색 부분이 제가 자주 사용하는 부분입니다.

요청한 인터페이스가 데이터로 성공적으로 응답한 후 이 성공 함수를 콜백하세요. 서버가 정상적으로 처리하는 한 반환된 데이터는 원하는 데이터입니다.

질문에 대한 답변은 위에서 언급했기 때문에 반복하지 않겠습니다. 단지 비동기성의 문제에 대해서만 묻고 싶습니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.