一个简单的AJAX JQuery示例给了我500个内部服务器错误

stackUser2000

嗨,我在Spring MVC项目中工作,当我按表单中的按钮时出现此错误

500 (Internal Server Error)                                    jquery.min.js:6
x.ajaxTransport.x.support.cors.e.crossDomain.send  jquery.min.js:6 
x.extend.ajax                                      AddUser:19 
doAjaxPost                                         AddUser:41 
onclick

我正在尝试做一个简单的AJAX JQuery示例,该示例将用户添加到列表中,但是当我在表单中按添加按钮时出现该错误

这是我的控制器类:

@Controller
public class UserListController {

 private List<User> userList = new ArrayList<User>();

     @RequestMapping(value="AddUser",method=RequestMethod.GET)
     public String showForm(){

         return "AddUser";
     }

     @RequestMapping(value="AddUser",method=RequestMethod.POST)
     public @ResponseBody String addUser(@ModelAttribute(value="user") User user, BindingResult result ) 
     {
         String returnText;

         if(!result.hasErrors())
         {
             userList.add(user);
             returnText = "User has been added to the list. Total number of users are " + userList.size();

         }
         else
         {
             returnText = "Sorry, an error has occur. User has not been added to list.";
         }

         return returnText;
     }

     @RequestMapping(value="ShowUsers")
     public String showUsers(ModelMap model) 
     {
         model.addAttribute("Users", userList);

         return "ShowUsers";
     }

}

这是我的AddUser.jsp页面

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
        <title>Add Users using ajax</title>

        <script src="http://ajax.googleapis.com/ajax/libs/jquery/2.0.2/jquery.min.js"></script>

        <!-- <script src="resources/js/libs/jquery-2.0.2.min.js"></script> -->

        <script type="text/javascript">

        function doAjaxPost() {
        // get the form values
        var name = $('#name').val();
        var education = $('#education').val();

        $.ajax({
        type: "POST",
        url: "AddUser",
        data: "name=" + name + "&education=" + education,
        success: function(response){
        // we have the response
        $('#info').html(response);
        $('#name').val('');
        $('#education').val('');
        },
        error: function(e){
        alert('Error: ' + e);
        }
        });
        }
        </script>
    </head>
    <body>
        <h1>Add Users using Ajax ........</h1>
        <table>
            <tr><td>Enter your name : </td><td> <input type="text" id="name"><br/></td></tr>
            <tr><td>Education : </td><td> <input type="text" id="education"><br/></td></tr>
            <tr><td colspan="2"><input type="button" value="Add Users" onclick="doAjaxPost()"><br/></td></tr>
            <tr><td colspan="2"><div id="info" style="color: green;"></div></td></tr>
        </table>
        <a href="/views/ShowUsers">Show All Users</a>
    </body>
</html>

和我的MvcConfiguration类,因为我使用的是基于Java的配置,而不使用XML

@EnableWebMvc
@Configuration
@ComponentScan(basePackages = { "controllers" })
public class MvcConfig extends WebMvcConfigurerAdapter
{
     @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
       registry.addResourceHandler("/resources/**").addResourceLocations("/resources/");
    }

    @Override
    public void configureDefaultServletHandling(DefaultServletHandlerConfigurer configurer) {
       configurer.enable();
    }

//  JSP VIEW-RESOLVER
    @Bean
    public InternalResourceViewResolver jspViewResolver() {
       InternalResourceViewResolver bean = new InternalResourceViewResolver();
       bean.setOrder(2);
       bean.setPrefix("/WEB-INF/views/");
       bean.setSuffix(".jsp");
       return bean;
    }
}

编辑:我只是为了试图知道我有什么错误而启动了一个新项目,我删除了我应用程序中的spring secuirty,但我仍然可以找出问题所在。

1)我实际上并没有删除Spring Security,我只是开始一个新项目来尝试解决我的URL问题

2)我在ajax脚本中更改控制器和URL属性

新的RequestMapping控制器:

 @RequestMapping(value="AddUser",method=RequestMethod.GET)

我删除了值=“ AddUser”中的“ /”

如果在控制器中放置“ /”,我的任何控制器中都没有“ /”,我也有相同的500内部服务器错误

安妮达(Aninda Bhattacharyya)

这可能是由于Java配置中默认启用的CSRF保护。尝试配置...

@Override
protected void configure(HttpSecurity http) throws Exception {
    http
        // ...
        .csrf().disable();
}

让我知道这个是否奏效。

编辑**

要将CSRF令牌包含在AJAX请求中,如果您使用的是JSON,则需要将其放在http标头中。示例JSP示例通常是...

<html>
<head>
<meta name="_csrf" content="${_csrf.token}"/>
<meta name="_csrf_header" content="${_csrf.headerName}"/>
</head>

然后在您的javascript调用中,获取此参数并将其添加到XMLHttpRequest的标头中。

希望这可以帮助。

进一步阅读

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Ajax:500内部服务器错误

来自分类Dev

AJAX 500(内部服务器错误)

来自分类Dev

Angular JS路由,500个内部服务器错误

来自分类Dev

jQuery AJAX发布:500(内部服务器错误)?

来自分类Dev

如何创建一个简单的托管服务器?

来自分类Dev

编辑我的htaccess文件后,我的网站返回500个内部服务器错误

来自分类Dev

如何部署一个简单的json服务器?

来自分类Dev

500个内部服务器错误的弹性beantalk烧瓶

来自分类Dev

控制器需要一个参数的值-内部服务器错误500

来自分类Dev

如何创建一个简单的托管服务器?

来自分类Dev

AJax内部服务器错误500

来自分类Dev

我的python脚本收到500个内部服务器错误,不确定是什么问题

来自分类Dev

用ajax调用一个简单的PHP函数

来自分类Dev

如果我在Scrapy中收到500个内部服务器错误,如何跳过URL?

来自分类Dev

AJAX 500(内部服务器错误)

来自分类Dev

Angular JS路由,500个内部服务器错误

来自分类Dev

一个简单的jQuery / AJAX查询

来自分类Dev

jQuery发布有500个内部服务器错误?

来自分类Dev

如何通过AJAX弹出一个简单的警报框?

来自分类Dev

PHP代码给出500个内部服务器错误

来自分类Dev

一个简单的AJAX示例-Silverstripe

来自分类Dev

服务器在尝试scp时给了我一个权限错误,但在ssh却没有给我一个权限错误

来自分类Dev

如何设置一个简单的文件服务器?

来自分类Dev

在Joomla中使用Ajax出现500个“内部服务器错误”

来自分类Dev

jQuery AJAX发布:500(内部服务器错误)?

来自分类Dev

一个非常基本的程序中的Angularjs 500(内部服务器错误)

来自分类Dev

我的发帖请求在Jersey中返回500个内部服务器错误

来自分类Dev

Wordpress网站收到500个内部服务器错误?

来自分类Dev

我使用 express 和 mongoDB 使用 findByIdAndUpdate 收到 500 个“内部服务器错误”

Related 相关文章

  1. 1

    Ajax:500内部服务器错误

  2. 2

    AJAX 500(内部服务器错误)

  3. 3

    Angular JS路由,500个内部服务器错误

  4. 4

    jQuery AJAX发布:500(内部服务器错误)?

  5. 5

    如何创建一个简单的托管服务器?

  6. 6

    编辑我的htaccess文件后,我的网站返回500个内部服务器错误

  7. 7

    如何部署一个简单的json服务器?

  8. 8

    500个内部服务器错误的弹性beantalk烧瓶

  9. 9

    控制器需要一个参数的值-内部服务器错误500

  10. 10

    如何创建一个简单的托管服务器?

  11. 11

    AJax内部服务器错误500

  12. 12

    我的python脚本收到500个内部服务器错误,不确定是什么问题

  13. 13

    用ajax调用一个简单的PHP函数

  14. 14

    如果我在Scrapy中收到500个内部服务器错误,如何跳过URL?

  15. 15

    AJAX 500(内部服务器错误)

  16. 16

    Angular JS路由,500个内部服务器错误

  17. 17

    一个简单的jQuery / AJAX查询

  18. 18

    jQuery发布有500个内部服务器错误?

  19. 19

    如何通过AJAX弹出一个简单的警报框?

  20. 20

    PHP代码给出500个内部服务器错误

  21. 21

    一个简单的AJAX示例-Silverstripe

  22. 22

    服务器在尝试scp时给了我一个权限错误,但在ssh却没有给我一个权限错误

  23. 23

    如何设置一个简单的文件服务器?

  24. 24

    在Joomla中使用Ajax出现500个“内部服务器错误”

  25. 25

    jQuery AJAX发布:500(内部服务器错误)?

  26. 26

    一个非常基本的程序中的Angularjs 500(内部服务器错误)

  27. 27

    我的发帖请求在Jersey中返回500个内部服务器错误

  28. 28

    Wordpress网站收到500个内部服务器错误?

  29. 29

    我使用 express 和 mongoDB 使用 findByIdAndUpdate 收到 500 个“内部服务器错误”

热门标签

归档