>웹 프론트엔드 >JS 튜토리얼 >JQuery.Ajax 오류 디버깅 도움말 정보 소개_jquery

JQuery.Ajax 오류 디버깅 도움말 정보 소개_jquery

WBOY
WBOY원래의
2016-05-16 17:30:26977검색
下面是Jquery中AJAX参数详细列表:
timeout Number 设置请求超时时间(毫秒)。此设置将覆盖全局设置。
async Boolean (默认: true) 默认设置下,所有请求均为异步请求。如果需要发送同步请求,请将此选项设置为 false。注意,同步请求将锁住浏览器,用户其它操作必须等待请求完成才可以执行。
beforeSend Function 发送请求前可修改 XMLHttpRequest 对象的函数,如添加自定义 HTTP 头。XMLHttpRequest 对象是唯一的参数。
<span>function</span> (XMLHttpRequest) { <span>this</span>; <span>// the options for this ajax request</span> }
cache Boolean (默认: true) jQuery 1.2 新功能,设置为 false 将不会从浏览器缓存中加载请求信息。
complete Function 请求完成后回调函数 (请求成功或失败时均调用)。参数: XMLHttpRequest 对象,成功信息字符串。
<span>function</span> (XMLHttpRequest, textStatus) { <span>this</span>; <span>// the options for this ajax request</span> }
contentType String (默认: "application/x-www-form-urlencoded") 发送信息至服务器时内容编码类型。默认值适合大多数应用场合。
data Object, String 发 送到服务器的数据。将自动转换为请求字符串格式。GET 请求中将附加在 URL 后。查看 processData 选项说明以禁止此自动转换。必须为 Key/Value 格式。如果为数组,jQuery 将自动为不同值对应同一个名称。如 {foo:["bar1", "bar2"]} 转换为 '&foo=bar1&foo=bar2'。
dataType String

预期服务器返回的数据类型。如果不指定,jQuery 将自动根据 HTTP 包 MIME 信息返回 responseXML 或 responseText,并作为回调函数参数传递,可用值:

"xml": 返回 XML 文档,可用 jQuery 处理。

"html": 返回纯文本 HTML 信息;包含 script 元素。

"script": 返回纯文本 JavaScript 代码。不会自动缓存结果。

"json": 返回 JSON 数据 。

"jsonp": JSONP 格式。使用 JSONP 形式调用函数时,如 "myurl?callback=?" jQuery 将自动替换 ? 为正确的函数名,以执行回调函数。

error Function (默认: 自动判断 (xml 或 html)) 请求失败时将调用此方法。这个方法有三个参数:XMLHttpRequest 对象,错误信息,(可能)捕获的错误对象。
<span>function</span> (XMLHttpRequest, textStatus, errorThrown) { <span>// 通常情况下textStatus和errorThown只有其中一个有值 </span> <span>this</span>; <span>// the options for this ajax request</span> }
global Boolean (默认: true) 是否触发全局 AJAX 事件。设置为 false 将不会触发全局 AJAX 事件,如 ajaxStart 或 ajaxStop 。可用于控制不同的Ajax事件
ifModified Boolean (默认: false) 仅在服务器数据改变时获取新数据。使用 HTTP 包 Last-Modified 头信息判断。
processData Boolean (默认: true) 默认情况下,发送的数据将被转换为对象(技术上讲并非字符串) 以配合默认内容类型 "application/x-www-form-urlencoded"。如果要发送 DOM 树信息或其它不希望转换的信息,请设置为 false。
success Function 请求成功后回调函数。这个方法有两个参数:服务器返回数据,返回状态
<span>function</span> (data, textStatus) { <span>// data could be xmlDoc, jsonObj, html, text, etc...</span> <span>this</span>; <span>// the options for this ajax request</span> }

코드 복사 코드는 다음과 같습니다.

$(document).ready(function() {
            jQuery("#clearCac").click(function() {
                jQuery.ajax({
                    url: "/Handle/Do.aspx",
                    type: "post",
                    data: { id: '0' },
                    dataType: "json",
                    success: function(msg) {
                        alert(msg);
                    },
                    error: function(XMLHttpRequest, textStatus, errorThrown) {
                        alert(XMLHttpRequest.status);
                        alert(XMLHttpRequest.readyState);
                        alert(textStatus);
                    },
                    complete: function(XMLHttpRequest, textStatus) {
                        this; // 调用本次AJAX请求时传递的options参数
                    }
                });
            });
        });

 

一、error:function (XMLHttpRequest, textStatus, errorThrown)
{
}
(默 认: 自动判断 (xml 或 html)) 请求失败时调用时间。参数有以下三个:XMLHttpRequest 对象、错误信息、(可选)捕获的错误对象。如果发生了错误,错误信息(第二个参数)除了得到null之外,还可能是"timeout", "error", "notmodified" 和 "parsererror"。

textStatus:

 "timeout", "error", "notmodified" 和 "parsererror"。

二、error事件返回的第一个参数XMLHttpRequest有一些有用的信息:
 
XMLHttpRequest.readyState:

状态码
 - (未初始化)还没有调用send()方法
 - (载入)已调用send()方法,正在发送请求
 - (载入完成)send()方法执行完成,已经接收到全部响应内容
 - (交互)正在解析响应内容
 - (完成)响应内容解析完成,可以在客户端调用了

三、data:"{}", data为空也一定要传"{}";不然返回的是xml格式的。并提示parsererror.
 
四、parsererror的异常和Header 类型也有关系。及编码header('Content-type: text/html; charset=utf8');

5. XMLHttpRequest.status:
xx-정보 프롬프트
이러한 상태 코드는 임시 응답을 나타냅니다. 클라이언트는 일반 응답을 받기 전에 하나 이상의 1xx 응답을 받을 준비를 해야 합니다.
-계속하세요.
-스위치 프로토콜.

xx-Success
이 유형의 상태 코드는 서버가 클라이언트 요청을 성공적으로 수락했음을 나타냅니다.
-알겠습니다. 클라이언트 요청이 성공했습니다.
- 생성되었습니다.
-수락되었습니다.
-신뢰할 수 없는 정보.
-내용이 없습니다.
-컨텐츠 재설정.
-콘텐츠의 일부입니다.

xx-redirect
클라이언트 브라우저는 요청을 이행하기 위해 추가 조치를 취해야 합니다. 예를 들어, 브라우저는 서버에서 다른 페이지를 요청하거나 프록시 서버를 통해 요청을 반복해야 할 수 있습니다.
-개체가 영구적으로 이동되었습니다. 즉, 영구적으로 리디렉션되었습니다.
- 개체가 일시적으로 이동되었습니다.
-수정되지 않았습니다.
-임시 리디렉션.

xx-Client Error
오류가 발생하여 클라이언트에 문제가 있는 것 같습니다. 예를 들어, 클라이언트가 존재하지 않는 페이지를 요청하는데 클라이언트가 유효한 인증 정보를 제공하지 않습니다. 400 - 잘못된 요청입니다.
-액세스가 거부되었습니다. IIS는 보다 구체적인 오류 원인을 나타내는 다양한 401 오류를 정의합니다. 이러한 특정 오류 코드는 브라우저에 표시되지만 IIS 로그에는 표시되지 않습니다.
.1 - 로그인 실패.
.2- 서버 구성으로 인해 로그인이 실패합니다.
.3-리소스에 대한 ACL 제한으로 인해 승인되지 않았습니다.
.4-필터 인증에 실패했습니다.
.5-ISAPI/CGI 애플리케이션 인증에 실패했습니다.
.7 – 웹 서버의 URL 인증 정책에 따라 액세스가 거부되었습니다. 이 오류 코드는 IIS6.0에만 해당됩니다.
-액세스 금지: IIS는 보다 구체적인 오류 원인을 나타내는 다양한 403 오류를 정의합니다.
.1-실행 액세스가 금지됩니다.
.2-읽기 접근이 금지되어 있습니다.
.3-쓰기 접근이 금지되어 있습니다.
.4-SSL이 필요합니다.
.5-SSL128이 필요합니다.
.6-IP 주소가 거부되었습니다.
.7-클라이언트 인증서가 필요합니다.
.8-사이트 접속이 거부되었습니다.
.9-사용자가 너무 많습니다.
.10-잘못된 구성입니다.
.11-비밀번호 변경.
.12-매핑 테이블에 대한 액세스가 거부되었습니다.
.13-클라이언트 인증서가 취소되었습니다.
.14-디렉토리 목록을 거부합니다.
.15-클라이언트 액세스 권한이 초과되었습니다.
.16-클라이언트 인증서가 신뢰할 수 없거나 유효하지 않습니다.
.17-클라이언트 인증서가 만료되었거나 아직 유효하지 않습니다.
.18 - 현재 응용프로그램 풀에서는 요청한 URL을 실행할 수 없습니다. 이 오류 코드는 IIS6.0에만 해당됩니다.
.19 - 이 응용 프로그램 풀의 클라이언트에 대해서는 CGI를 실행할 수 없습니다. 이 오류 코드는 IIS6.0에만 해당됩니다.
.20-여권 로그인에 실패했습니다. 이 오류 코드는 IIS6.0에만 해당됩니다.
-찾을 수 없습니다.
.0-(없음) – 파일이나 디렉터리를 찾을 수 없습니다.
.1-요청한 포트에서 웹사이트에 접속할 수 없습니다.
.2-웹 서비스 확장 잠금 정책에 따라 이 요청이 차단됩니다.
.3-MIME 매핑 정책은 이 요청을 차단합니다.
-이 페이지에 액세스하는 데 사용된 HTTP 동사는 허용되지 않습니다(메서드 허용되지 않음)
-클라이언트 브라우저는 요청된 페이지의 MIME 유형을 허용하지 않습니다.
- 프록시 인증이 필요합니다.
-전제조건이 실패했습니다.
–요청 엔터티가 너무 큽니다.
-요청 URI가 너무 깁니다.
– 지원되지 않는 미디어 유형입니다.
– 요청한 범위를 충족할 수 없습니다.
–실행이 실패했습니다.
–잠긴 오류.

xx-서버 오류

서버에 오류가 발생하여 요청을 완료할 수 없습니다.
- 내부 서버 오류입니다.
.12 - 웹 서버에서 애플리케이션을 다시 시작하는 중입니다.
.13-웹 서버 사용량이 너무 많습니다.
.15-Global.asa에 대한 직접 요청은 허용되지 않습니다.
.16–UNC 인증 자격 증명이 올바르지 않습니다. 이 오류 코드는 IIS6.0에만 해당됩니다.
.18 – URL 인증 저장소를 열 수 없습니다. 이 오류 코드는 IIS6.0에만 해당됩니다.
.100-내부 ASP 오류입니다.
- 헤더 값은 구현되지 않은 구성을 지정합니다.
- 웹 서버가 게이트웨이 또는 프록시 서버 역할을 할 때 잘못된 응답을 받았습니다.
.1-CGI 애플리케이션 시간이 초과되었습니다.
.2-CGI 응용 프로그램 오류입니다.
- 서비스를 이용할 수 없습니다. 이 오류 코드는 IIS6.0에만 해당됩니다.
-게이트웨이 시간 초과.
-HTTP 버전은 지원하지 않습니다.
FTP

xx - 긍정적인 초기 응답
이러한 상태 코드는 작업이 성공적으로 시작되었지만 클라이언트가 새 명령을 진행하기 전에 또 다른 응답을 원한다는 것을 나타냅니다.
태그 응답을 다시 시작하세요.
서비스가 준비되었으며 nnn분 후에 시작됩니다.
데이터 연결이 열려 전송이 시작됩니다.
파일 상태는 정상이며 데이터 연결을 오픈할 준비가 되어 있습니다.

xx-긍정적 완료 응답
작업이 성공적으로 완료되었습니다. 클라이언트는 새로운 명령을 실행할 수 있습니다. 200 명령이 맞습니다.
명령이 실행되지 않았습니다. 사이트에 명령이 너무 많습니다.
시스템 상태 또는 시스템 도움말 답변.
디렉터리 상태.
파일 상태.
도움말 메시지.
NAME 시스템 유형. 여기서 NAME은 AssignedNumbers 문서에 나열된 공식 시스템 이름입니다.
서비스가 신규 사용자의 요청을 실행할 준비가 되었습니다.
서비스가 제어 연결을 종료합니다. 해당하는 경우 로그아웃합니다.
데이터 연결이 열려 있고 전송이 진행 중이 아닙니다.
데이터 연결을 닫습니다. 요청한 파일 작업이 성공했습니다(예: 파일 전송 또는 파일 삭제).
패시브 모드(h1, h2, h3, h4, p1, p2)로 들어갑니다.
사용자가 로그인되어 있습니다. 계속하세요.
요청한 파일 작업이 정확하고 완료되었습니다.
PATHNAME이 생성되었습니다.

xx - 긍정적인 중간 응답
명령이 성공했지만 서버가 요청 처리를 완료하려면 클라이언트로부터 추가 정보가 필요합니다. 331 사용자 이름이 정확하며 비밀번호가 필요합니다.
계정 로그인이 필요합니다.
요청한 파일 작업에 대한 추가 정보가 보류 중입니다.

xx-일시적 부정 완료 답변
명령이 실패했지만 오류는 일시적입니다. 클라이언트가 명령을 다시 시도하면 성공할 수 있습니다. 421 서비스를 사용할 수 없습니다. 제어 연결을 닫습니다. 서비스가 종료되어야 한다고 결정하면 이 응답은 모든 명령에 전송됩니다.
데이터 연결을 열 수 없습니다.
연결이 닫혔습니다. 전송이 중단되었습니다.
요청한 파일 작업이 수행되지 않았습니다. 파일을 사용할 수 없습니다(예: 파일이 사용 중임).
요청한 작업이 비정상적으로 종료되었습니다. 로컬 오류를 처리하는 중입니다.
요청한 작업이 수행되지 않았습니다. 시스템 저장 공간이 부족합니다.

xx - 영구 부정 완료 응답

명령이 실패했으며 오류가 영구적입니다. 클라이언트가 명령을 다시 시도하면 동일한 오류가 다시 나타납니다. 500 구문 오류, 명령이 인식되지 않습니다. 여기에는 명령줄이 너무 길어지는 등의 오류가 포함될 수 있습니다.
매개변수에 구문 오류가 있습니다.
명령이 실행되지 않았습니다.
명령 순서가 잘못되었습니다.
이 매개변수가 포함된 명령이 실행되지 않았습니다.
로그인되지 않았습니다.
파일을 저장하려면 계정이 필요합니다.
요청한 작업이 수행되지 않았습니다. 파일을 사용할 수 없습니다(예: 파일을 찾을 수 없음, 액세스 권한 없음).
요청한 작업이 비정상적으로 종료되었습니다. 페이지 유형을 알 수 없습니다.
요청한 파일 작업이 비정상적으로 종료되었습니다. 저장소 할당이 초과되었습니다(현재 디렉터리 또는 데이터 세트에 대한).
요청한 작업이 수행되지 않았습니다. 파일 이름이 허용되지 않습니다.
일반적인 FTP 상태 코드 및 원인
-FTP는 두 개의 포트를 사용합니다: 21은 명령 전송용이고 20은 데이터 전송용입니다. 상태 코드 150은 서버가 일부 데이터를 보내기 위해 포트 20에서 새 연결을 열 준비를 하고 있음을 의미합니다.
- 명령은 파일 전송과 같은 작업을 수행하기 위해 포트 20에서 데이터 연결을 엽니다. 작업이 성공적으로 완료되었으며 데이터 연결이 종료되었습니다.
-이 상태 코드는 클라이언트가 올바른 비밀번호를 보낸 후에 표시됩니다. 이는 사용자가 성공적으로 로그인했음을 의미합니다.
-이 상태 코드는 클라이언트가 사용자 이름을 보낸 후에 표시됩니다. 이 상태 코드는 제공된 사용자 이름이 시스템에서 유효한 계정인지 여부에 관계없이 표시됩니다.
- 명령이 작업을 수행하기 위해 데이터 연결을 열었지만 작업이 취소되고 데이터 연결이 닫혔습니다.
- 이 상태 코드는 사용자 이름과 비밀번호 조합이 잘못되어 사용자가 로그인할 수 없음을 의미합니다. 사용자 계정으로 로그인하는 경우 잘못된 사용자 이름이나 비밀번호를 입력했거나 익명 액세스만 허용하도록 선택했을 수 있습니다. 익명 계정을 사용하여 로그인하는 경우 IIS는 익명 액세스를 거부하도록 구성될 수 있습니다.
- 지정된 파일을 사용할 수 없기 때문에 명령이 실행되지 않았습니다. 예를 들어, GET하려는 파일이 존재하지 않거나 쓰기 권한이 없는 디렉터리에 파일을 PUT하려고 합니다.

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