jquery ajax返回Internal server error 500错误怎么解决
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jquery ajax返回Internal server error 500错误怎么解决相关的知识,希望对你有一定的参考价值。
服务器错误,检查你的后台代码。
是服务器有问题,你可以再仔细检查下你请求的地址是否有误,在确认地址没有错误的时候,你能操作后台文件的话可以在请求的后台文件中打印你是否请求到该文件,也就是在那个文件的头部直接输出个值后在断掉看看是否能通,然后在进一步调试。
服务器,也称伺服器。指一个管理资源并为用户提供服务的计算机软件,通常分为文件服务器、数据库服务器和应用程序服务器。运行以上软件的计算机或计算机系统也被称为服务器。服务器的构成与一般的PC比较相似,但是服务器在稳定性、安全性、性能等方面都要求更高,因为CPU、芯片组、内存、磁盘系统、网络等硬件和普通PC有所不同。
它的高性能主要体现在高速度的运算能力、长时间的可靠运行、强大的外部数据吞吐能力等方面。服务器的构成与微机基本相似,有处理器、硬盘、内存、系统总线等,它们是针对具体的网络应用特别制定的,因而服务器与微机在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面存在差异很大。
使用jQuery发送ajax
首先我们来看一波js的原声ajax。
我们先准备好servlet,之后不会改动,所以先看一波。
package cn.curry.servlet; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.serializer.SerializerFeature; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.util.ArrayList; import java.util.List; /** * Created by zl on 2017/3/18. */ public class RegisterServlet extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String name=request.getParameter("name"); if("admin".equals(name)){ //打回浏览器 “已经注册” response.getWriter().write("Your Account Is Already Registered"); } else{ //可以注册 response.getWriter().write("You Can Register This Account"); } } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doPost(request,response); } }
很简单的servlet页面,然后我们看前台jsp展示页面,我写的是发送post,请求。
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>注册</title>
<script type="text/javascript">
function checkUser(){
var value=document.getElementById("username").value;
var url="RegisterServlet"; var xhr; if(window.XMLHttpRequest){ //非IE浏览器 Chrome 等 xhr=new XMLHttpRequest(); }else{ //IE xhr=new ActiveXObject("Microsoft.XMLHTTP"); } xhr.open(‘post‘,url,true); xhr.onreadystatechange=function(){ if(xhr.readyState==4&&xhr.status==200){ var content=xhr.responseText; document.getElementById("msg").innerText=content; } } xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded") xhr.send("name="+value); } </script> </head> <body> <input id="username" name="username" onblur="checkUser()"/><span id="msg"></span><br/> <input name="userpwd"/> </body> </html>
简单改一下就可以实现发送get请求。
<%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>注册</title> <script type="text/javascript"> function checkUser(){ var value=document.getElementById("username").value; var url="RegisterServlet?name="+value; var xhr; if(window.XMLHttpRequest){ //非IE浏览器 Chrome 等 xhr=new XMLHttpRequest(); }else{ //IE xhr=new ActiveXObject("Microsoft.XMLHTTP"); } xhr.open(‘get‘,url,true); xhr.onreadystatechange=function(){ if(xhr.readyState==4&&xhr.status==200){ var content=xhr.responseText; document.getElementById("msg").innerText=content; } } xhr.send(null); } </script> </head> <body> <input id="username" name="username" onblur="checkUser()"/><span id="msg"></span><br/> <input name="userpwd"/> </body> </html>
接下来看jQuery的,简单了很多。
<%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>注册</title> <script type="text/javascript" src="jq/jQuery1.11.1.js"></script> <script type="text/javascript"> function checkUser() { var value=document.getElementById("username").value; $.ajax({ url : "RegisterServlet", type : "GET", data : "name="+value, dataType : "text", success : function(result){ document.getElementById("msg").innerText=result; }, error:function () { document.getElementById("msg").innerText=result; } }); } </script> </head> <body> <input id="username" name="username" onblur="checkUser()"/><span id="msg"></span><br/> <input name="userpwd"/> </body> </html>
发送post请求直接把get改为post就可以了。这里就不做概述了。
当然除了$.ajax jQuery还提供了$.get(),$.post(),$(select).load等方法。以上方法用法和$.ajax()语法并没有不同,是对$.ajax()的封装,但是$.ajax()更灵活,通常使用$.ajax()可以完成我们的开发。所以你懂得。
以上是关于jquery ajax返回Internal server error 500错误怎么解决的主要内容,如果未能解决你的问题,请参考以下文章
ajax中push,在jQuery serialize()或serializeArray()中添加/ push()值到Ajax POST