>웹 프론트엔드 >JS 튜토리얼 >Ajax 상호작용 중에 보고된 status=parsererror 오류를 해결하는 방법

Ajax 상호작용 중에 보고된 status=parsererror 오류를 해결하는 방법

php中世界最好的语言
php中世界最好的语言원래의
2018-04-02 13:33:324907검색

이번에는 Ajax 상호작용 중에 발생하는 status=parsererror 오류를 해결하는 방법을 알려드리겠습니다. Ajax 상호작용 중에 status=parsererror 오류가 발생하는 경우 해결하기 위한 주의사항은 무엇입니까? 다음은 실제 사례입니다. 바라보다.

원인: 서블릿에서 반환된 데이터가 Json 형식이 아닙니다

1. JS 코드는

var jsonStr = {'clusterNum':2,'iterationNum':3,'runTimes':4};
    $.ajax({
      type: "post",
      //http://172.22.12.135:9000/Json.json
      url: "/LSHome/LSHome",
      dataType : 'json',
      data : jsonStr,
      success: function(data,textStatus){
        if(textStatus=="success"){ 
          alert("创建任务操作成功"+data);      
        }        
      },
      error: function(xhr,status,errMsg){
        alert("创建任务操作失败!");
      }
    });

2입니다. 위의 URL은 /LSHome/LSHome입니다. 이름은 LSHome)이므로 웹에서는 .xml 파일에서 Servlet을 다음과 같이 구성합니다.

<servlet>
   <servlet-name>LSHomeServlet</servlet-name>
   <servlet-class>com.ys.servlet.LSHomeServlet</servlet-class>
 </servlet>
 <servlet-mapping>
   <servlet-name>LSHomeServlet</servlet-name>
 <url-pattern>/LSHome</url-pattern>

3. Servlet의 코드는 다음과 같습니다.

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    //聚类数量
    String clusterNum = request.getParameter("clusterNum");
    //迭代次数
    String iterationNum = request.getParameter("iterationNum");
    //运行次数
    String runTimes = request.getParameter("runTimes");
    System.out.println("聚类数量为:"+clusterNum+"---迭代次数:"+iterationNum+"---运行次数:"+runTimes);
    PrintWriter out = response.getWriter();      
    out.write("success");
    out.close();  
  }

4. 결과적으로 항상 ajax 메소드 입력 오류 및 status=parsererror

xhr = Object {readyState: 4, responseText: "success", status: 200, statusText: "OK"}

5. 해결책:

이유는 응답 객체를 통해 반환된 데이터 형식이 올바르지 않기 때문입니다. 올바른 메소드

 PrintWriter out = response.getWriter();
String jsonStr = "{\"success\":\"OK\"}";
 out.write(jsonStr);

는 반환 값을 조각화할 수 있습니다. JSON 데이터 형식으로 변환하면 status=parsererror가 보고됩니다

이 기사의 경우 방법을 숙지하셨을 것으로 예상됩니다. 더 흥미로운 정보를 보려면 PHP 중국어 웹사이트의 다른 관련 기사를 참고하세요. !

추천 자료:

Ajax를 사용하여 팝업 로그인을 구현하는 방법

Ajax+부트스트랩 단계를 통해 웹 사용자 경험 최적화

위 내용은 Ajax 상호작용 중에 보고된 status=parsererror 오류를 해결하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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