无法向 Spring 资源服务器发送 POST 请求

J·洛伊

我有一个 Spring BootResourceServer和一个 React 客户端应用程序。我正在尝试向POST其中一个服务器端点(有@CrossOrigin注释顺便说一句)发送请求,但是,我在控制台中收到此错误:

从源“ http://localhost:3000访问“ http://localhost:8080/api/search ”的XMLHttpRequest已被 CORS 策略阻止:对预检请求的响应未通过访问控制检查:它没有有 HTTP ok 状态。

预检请求返回 401 Http 状态,不知道为什么。

预检请求的响应标头如下所示:

Access-Control-Allow-Credentials: true
Access-Control-Allow-Headers: content-type
Access-Control-Allow-Methods: POST
Access-Control-Allow-Origin: http://localhost:3000
Allow: GET, HEAD, POST, PUT, DELETE, TRACE, OPTIONS, PATCH
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Content-Length: 0
Date: Sun, 20 Oct 2019 17:23:54 GMT
Expires: 0
Pragma: no-cache
Vary: Origin, Access-Control-Request-Method, Access-Control-Request-Headers
WWW-Authenticate: Basic realm="Realm"
X-Content-Type-Options: nosniff
X-Frame-Options: DENY
X-XSS-Protection: 1; mode=block

我的预检请求标头如下所示:

Access-Control-Request-Headers: content-type
Access-Control-Request-Method: POST
Origin: http://localhost:3000
Referer: http://localhost:3000/movie-search
Sec-Fetch-Mode: no-cors
User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.87 Safari/537.36

我正在使用 Axios 发送请求(如果这很重要)。有谁知道这里发生了什么?

J·洛伊

糟糕...我的 HTTPSecurity 配置看起来像这样:

http
    .authorizeRequests()
    .antMatchers(HTTPMethod.POST, "/api/search").permitAll()
    .anyRequest().authenticated()
    .and().httpBasic()

而不是这个:

http
    .authorizeRequests()
    .antMatchers("/api/search").permitAll()
    .anyRequest().authenticated()
    .and().httpBasic()

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

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

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

spring post无法加载资源:服务器响应状态为400(错误请求)

无法将POST请求发送到服务器

无法向旧网站发送 POST 请求

将POST请求发送到服务器,服务器的响应为空,Angular-Spring-boot

如何断言应用程序通过 POST 请求向 API 服务器发送正确的数据

从 JavaScript 向节点服务器发送 HTTP POST 请求时主体为空

从服务器向 Dialogflow 发送请求

如何向服务器发送请求

无法使用Java将POST请求中的ArrayList发送到REST服务器

无法通过POST请求将json数据发送到服务器

React Hooks:如何向服务器发出POST请求

从角度前端向服务器表达HTTP POST请求

Chrome没有向服务器提交POST请求

如何向 PHP 服务器发出 post 请求

无法向 Google Apps 脚本发送 POST 请求

使用以下代码向服务器发送jQuery或AngularJS Ajax“ POST”请求,但是不向服务器发送参数数据。

尝试向 Nest JS 服务器发送特定 POST 请求时,为什么会出现 404 错误?

无法捕获对节点服务器的 POST 请求的响应

向服务器发布获取数据的请求,发生错误:无法加载资源

如何从客户端桌面应用程序向服务器端Spring应用程序发送请求?

如何发送POST请求到远程服务器?

Envato API 从服务器发送 POST 请求

为什么 Retrofit 不向服务器发送 POST 请求?

无法从服务器向 FCM url 发送请求(相同的代码在本地电脑上工作)

无法使用 libmemcached 模块向 memcached 服务器发送 UDP get 请求

无法在Spring MVC控制器中对POST请求发送json响应

电报不断向服务器发送请求

向文件发送请求到服务器

如何规范向服务器发送请求?