Spring MVC + Zepto POST中的“ Access-Control-Allow-Origin”错误

隆比克

我正在尝试将JSON对象发布到我的Spring MVC控制器,但是我只收到一个Access-Control-Allow-Origin错误。

我的控制器:

@RequestMapping(value= "/add", method = RequestMethod.POST, headers = {"content-type=application/json"})
public @ResponseBody Reponse addUser(Model model, @RequestBody @Valid @ModelAttribute("user") User user, BindingResult result) {
    if (result.hasErrors()) {
        Reponse error = new Reponse();
        // etc......
        return error;
    } else {
        return service.addUser(user);
    }
}

我的Zepto POST:

this.addUser = function (valeur, callback) {
    $.ajax({
        type: 'POST',
        url: 'http://127.0.0.1:8080/AgenceVoyage/user/add',
        data: JSON.stringify({"mail" : "[email protected]" , "password" : "titi"}),
        dataType: "json",
        contentType: "application/json",

        success: function(data) {
            if(data.reponse == "OK") {
                window.location = "main.html";
            } else {
                alert("PROBLEM");
            }
        },

        error: function(xhr, type) {
            alert("ERROR");
        }
    });
};

我尝试在POST请求中没有stringify,在中没有头@RequestMapping

我的结果:

选项http://127.0.0.1:8080/AgenceVoyage/user/add在所请求的资源上不存在“ Access-Control-Allow-Origin”标头。因此,不允许访问源' http:// localhost:9000 '。zepto.min.js:2 XMLHttpRequest无法加载

隆比克

我找到了解决方案:

首先,创建一个新的过滤器,该过滤器将设置标头响应:

    @Component
public class SimpleCORSFilter implements Filter {

    public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throws IOException, ServletException {
        HttpServletResponse response = (HttpServletResponse) res;
        response.setHeader("Access-Control-Allow-Origin", "*");
        response.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE");
        response.setHeader("Access-Control-Max-Age", "3600");
        response.setHeader("Access-Control-Allow-Headers", "x-requested-with");
        chain.doFilter(req, res);
    }

    public void init(FilterConfig filterConfig) {}

    public void destroy() {}

}

之后,在您的web.xml中添加以下行:

 <filter>
  <filter-name>cors</filter-name>
  <filter-class>MY.PACKAGE.SimpleCORSFilter</filter-class>
 </filter>

 <filter-mapping>
  <filter-name>cors</filter-name>
  <url-pattern>/*</url-pattern>
 </filter-mapping>

而这一切!

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

XMLHttpRequest 'Access-Control-Allow-Origin' 错误

来自分类Dev

没有'Access-Control-Allow-Origin'标头错误,但POST仍然通过

来自分类Dev

angularjs $ http.post上的错误access-control-allow-origin

来自分类Dev

Access-Control-Allow-Origin 错误向 API 发送 jQuery Post

来自分类Dev

如何在 Spring Boot 中向 Access-Control-Allow-Origin 添加多个域?

来自分类Dev

Ajax-ember.js中的“ Access-Control-Allow-Origin”错误

来自分类Dev

我的Restify服务器中没有'Access-Control-Allow-Origin'错误

来自分类常见问题

请求的资源错误中不存在“ Access-Control-Allow-Origin”标头

来自分类Dev

在Openfire中访问BOSH时出现Access-Control-Allow-Origin错误

来自分类Dev

HMVC Codeigniter中没有“ Access-Control-Allow-Origin”错误

来自分类Dev

Node.Js错误“请求中没有'Access-Control-Allow-Origin'标头”

来自分类Dev

在Phonegap应用中获取Wordpress帖子时出现Access-Control-Allow-Origin错误

来自分类Dev

在Openfire中访问BOSH时出现Access-Control-Allow-Origin错误

来自分类Dev

我的Restify服务器中没有'Access-Control-Allow-Origin'错误

来自分类Dev

Ajax-ember.js中的“ Access-Control-Allow-Origin”错误

来自分类Dev

修复 NGINX 中的“Access-Control-Allow-Origin”标头包含多个值错误

来自分类Dev

$ .post没有'Access-Control-Allow-Origin'标头

来自分类Dev

JavaScript-XMLHttpRequest,Access-Control-Allow-Origin错误

来自分类Dev

Foursquare返回“ No access control allow origin”标头存在错误

来自分类Dev

AngularJS发布请求错误否'Access-Control-Allow-Origin'

来自分类Dev

AngularJS发布请求错误否'Access-Control-Allow-Origin'

来自分类Dev

Foursquare返回“ No access control allow origin”标头存在错误

来自分类Dev

如何解决Access-Control-Allow-Origin错误?

来自分类Dev

PHP Nginx 没有“Access-Control-Allow-Origin”错误

来自分类Dev

XMLRPC请求中的Access-Control-Allow-Origin问题

来自分类Dev

XMLRPC请求中的Access-Control-Allow-Origin问题

来自分类Dev

在IIS中修改Access-Control-Allow-Origin标头

来自分类Dev

access-control-allow-origin中的相同域是什么

来自分类Dev

在Aurelia中添加“ Access-Control-Allow-Origin”标头

Related 相关文章

  1. 1

    XMLHttpRequest 'Access-Control-Allow-Origin' 错误

  2. 2

    没有'Access-Control-Allow-Origin'标头错误,但POST仍然通过

  3. 3

    angularjs $ http.post上的错误access-control-allow-origin

  4. 4

    Access-Control-Allow-Origin 错误向 API 发送 jQuery Post

  5. 5

    如何在 Spring Boot 中向 Access-Control-Allow-Origin 添加多个域?

  6. 6

    Ajax-ember.js中的“ Access-Control-Allow-Origin”错误

  7. 7

    我的Restify服务器中没有'Access-Control-Allow-Origin'错误

  8. 8

    请求的资源错误中不存在“ Access-Control-Allow-Origin”标头

  9. 9

    在Openfire中访问BOSH时出现Access-Control-Allow-Origin错误

  10. 10

    HMVC Codeigniter中没有“ Access-Control-Allow-Origin”错误

  11. 11

    Node.Js错误“请求中没有'Access-Control-Allow-Origin'标头”

  12. 12

    在Phonegap应用中获取Wordpress帖子时出现Access-Control-Allow-Origin错误

  13. 13

    在Openfire中访问BOSH时出现Access-Control-Allow-Origin错误

  14. 14

    我的Restify服务器中没有'Access-Control-Allow-Origin'错误

  15. 15

    Ajax-ember.js中的“ Access-Control-Allow-Origin”错误

  16. 16

    修复 NGINX 中的“Access-Control-Allow-Origin”标头包含多个值错误

  17. 17

    $ .post没有'Access-Control-Allow-Origin'标头

  18. 18

    JavaScript-XMLHttpRequest,Access-Control-Allow-Origin错误

  19. 19

    Foursquare返回“ No access control allow origin”标头存在错误

  20. 20

    AngularJS发布请求错误否'Access-Control-Allow-Origin'

  21. 21

    AngularJS发布请求错误否'Access-Control-Allow-Origin'

  22. 22

    Foursquare返回“ No access control allow origin”标头存在错误

  23. 23

    如何解决Access-Control-Allow-Origin错误?

  24. 24

    PHP Nginx 没有“Access-Control-Allow-Origin”错误

  25. 25

    XMLRPC请求中的Access-Control-Allow-Origin问题

  26. 26

    XMLRPC请求中的Access-Control-Allow-Origin问题

  27. 27

    在IIS中修改Access-Control-Allow-Origin标头

  28. 28

    access-control-allow-origin中的相同域是什么

  29. 29

    在Aurelia中添加“ Access-Control-Allow-Origin”标头

热门标签

归档