当前位置: 首页 > 知识库问答 >
问题:

Angular2 Ng2文件上传CORS问题

叶建柏
2023-03-14

我是尝试< code>angular2的新手。我已经安装了angular2文件上传。我在这里复制了教程中的所有代码

我完全复制开发人员在那里写的内容。但是我遇到这样的问题:

XMLHttpRequest无法加载http://localhost:8080/citizen/upload。对预检请求的响应未通过访问控制检查:响应中“Access-Control-Allow-Credentials”标头的值为“”,当请求的凭据模式为“include”时,该值必须为“true”。因此,不允许访问源“http://localhost:4200”。XMLHttpRequest发起的请求的凭据模式由withCredentials属性控制。

我的< code>SpringBoot中有这样的< code>CORS过滤器

@Component
public class SimpleCorsFilter implements Filter {
     @Override
     public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throws IOException, ServletException {
        HttpServletResponse response = (HttpServletResponse) res;
        response.setHeader("Access-Control-Allow-Origin", "http://localhost:4200");
        response.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE, PUT");
        response.setHeader("Access-Control-Max-Age", "3600");
        response.setHeader("Access-Control-Allow-Headers", "Origin, X-Requested-With, Authorization, Content-Type, Accept, enctype");
        chain.doFilter(req, res);
    }

在我添加那个angular2文件上传代码之前仍然可以。如何解决?

共有1个答案

王棋
2023-03-14

当发生跨源请求时,它首先发送一个 HTTP 选项来检查服务器是否允许跨源请求。如果您使用的是 Spring 安全性,请检查您是否允许 HTTP 选项在没有验证的情况下运行。如果在那里,请添加这样的过滤器

 protected void doFilterInternal(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, FilterChain filterChain) throws ServletException, IOException {
    httpServletResponse.addHeader("Access-Control-Allow-Origin", "http://localhost:4200");
    httpServletResponse.setHeader("Access-Control-Allow-Credentials", "true");
    httpServletResponse.addHeader("Access-Control-Allow-Methods", "GET, POST, DELETE, PUT");
    httpServletResponse.addHeader("Access-Control-Allow-Headers", "X-Requested-With, Content-Type, X-Codingpedia, Authorization");
    httpServletResponse.addHeader("access-control-expose-headers", "Authorization");

    if (!"OPTIONS".equals(httpServletRequest.getMethod())) {
        filterChain.doFilter(httpServletRequest, httpServletResponse);
    }
}
 类似资料:
  • 本文向大家介绍PHP 文件上传限制问题,包括了PHP 文件上传限制问题的使用技巧和注意事项,需要的朋友参考一下 PHP 大文件上传占用大量资源,因此需要对上传的大小进行限制,以下为相关的三个参数: client_max_body_size upload_max_filesize post_max_size 与以上相对应的三个报错信息: Warning: POST Content-Length of

  • 本文向大家介绍php上传文件问题汇总,包括了php上传文件问题汇总的使用技巧和注意事项,需要的朋友参考一下 1.先做个最简单的上传文件 2.然后了解超级全局变量$_FILES的值 其中,$_FILES['userfile']['error']的所有值: UPLOAD_ERR_OK 其值为 0,没有错误发生,文件上传成功。 UPLOAD_ERR_INI_SIZE 其值为 1,上传的文件超过了 php

  • 本文向大家介绍PHP文件上传问题汇总(文件大小检测、大文件上传处理),包括了PHP文件上传问题汇总(文件大小检测、大文件上传处理)的使用技巧和注意事项,需要的朋友参考一下 由于涉及到本地和服务器两方面的安全问题,所以基于input type="file"形式的页面文件上传一直处于一个很尴尬的位置。一方面,用户不希望隐私泄露,所以浏览器无法对用户在上传时选择的文件做有效的判 断。另一方面,为了服务器

  • 我已经使用这个库angular2文件上传https://github.com/valor-software/ng2-file-upload 现在我上传文件时收到此错误 无法加载XMLHttpRequesthttp://localhost:8080/files.对飞行前请求的响应未通过访问控制检查:当请求的凭据模式为“include”时,响应中“access control Allow Origin

  • 我在本地开发服务器上运行代码,但使用在项目上配置的GCS默认桶名。 Python 2.7版

  • 本文向大家介绍解决layui上传文件提示上传异常,实际文件已经上传成功的问题,包括了解决layui上传文件提示上传异常,实际文件已经上传成功的问题的使用技巧和注意事项,需要的朋友参考一下 layui上传文件提示上传异常,实际文件已经上传成功 原因:上传回调的方法接收的参数应该是json格式的,之前返回的是String,所以一直走异常的方法 以上这篇解决layui上传文件提示上传异常,实际文件已经上

  • 在Yii里上传文件通常使用 yii\web\UploadedFile 类, 它把每个上传的文件封装成 UploadedFile 对象。 结合 yii\widgets\ActiveForm 和 models,你可以轻松实现安全的上传文件机制。 创建模型 和普通的文本输入框类似,当要上传一个文件时,你需要创建一个模型类并且用其中的某个属性来接收上传的文件实例。 你还需要声明一条验证规则以验证上传的文件

  • 大多数的 Web 应用都不可避免的,会涉及到文件上传。文件上传,不过是一种适配 HTTP 输入流的方式。 为此,Nutz.Mvc 内置了一个专门处理文件上传的适配器 org.nutz.mvc.upload.UploadAdaptor 这个适配器专门解析形式为 <form target="hideWin" enctype="multipart/form-data" method="post">