java - React 应用程序不向 java 服务器发送 header

标签 java reactjs header authorization token

我在互联网上搜索了很多,但没有找到任何对我的问题有帮助的东西。 我有一个java服务器和一个react客户端。我的服务器使用 jwt 进行身份验证并向我的客户端返回 token 。

当我尝试使用 post 方法发送数据时,我的客户端不发送 header ,因此我的服务器返回“未经授权”消息。我尝试从 Postman 和 ARC(高级休息客户端)发送相同的请求,它有效。

这是我的客户端代码:

fetch(url, {
            method: 'POST',
            crossDomain: true,
            mode: 'no-cors',
            body: JSON.stringify(data),
            headers: {
                'Authorization': 'Bearer ' + 'token generated from fiddler after running auth',
                'Accept': 'application/json',
                'Content-Type': 'application/json'
            }
        })
            .then(response => response.json())
            .then(responseJson => {
                console.log(responseJson);
            });

我也尝试过使用axios,但遇到了同样的问题。 另外,我的服务器在所有 Controller 类中都有 @CrossOrigin(origins = {"*"}) 注释。

我不知道我的问题是出在客户端还是服务器,以及为什么使用 Postman 和 ARC 工作。

最佳答案

您正在使用模式:no-cors,它基本上删除了所有不是简单 header 的 header :https://developer.mozilla.org/en-US/docs/Web/API/Request/mode

您应该启用 CORS 并在服务器上允许您的域。

关于java - React 应用程序不向 java 服务器发送 header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60779487/

相关文章:

java - Kafka不使用偏移量而是通过记录的字段从主题中删除记录

javascript - 根据变量的长度多次调用突变

css - React 在鼠标悬停时添加图像,平滑过渡

java - 如何生成特定的 JNI header

JQuery UI Accordion,如何使用另一个函数将按钮/链接放置到标题

java - 如何正确清除VFS Ram文件系统

java - Spring + EntityManagerFactory +Hibernate 监听器 + 注入(inject)

c++ - 如果 .h 包含在多个 .cpp 中,.h 中的结构不起作用?

Java - 直方图程序

reactjs - zsh : command not found: netlify on mac OS