如何解决vite的localhost不安全问题?

问题描述 投票:0回答:1

我正在做一个用react + tailwind + vite开发的个人项目。在我的注册组件中,我需要将一些信息从客户端( localhost:5173 )发布到服务器端( localhost:5514 ),但我不断收到此错误:

POST https://localhost:5514/api/auth/signup net::ERR_SSL_PROTOCOL_ERROR 
。我相信这与浏览器上的“不安全”警告有关,并且我找不到解决此问题的任何解决方案。

enter image description here

我尝试添加一些 CORS 配置,但没有任何变化。

import express from "express";
import cors from "cors";
import http from "http";
import dotenv from "dotenv";
import mongoose from "mongoose";
import authRoutes from "./src/routes/authRoutes.js";

dotenv.config();

const PORT = process.env.PORT || 5514;
const app = express();

app.use(express.json());


app.use(cors({
  origin: 'https://localhost:5173', 
  methods: ['GET', 'POST', 'PUT', 'DELETE', 'OPTIONS'],
  allowedHeaders: ['Content-Type', 'Authorization'],
  credentials: true
}));

app.get("/", (req, res) => {
    return res.send("Hello!");
});

app.options('*', cors());

app.use("/api/auth", authRoutes);

const server = http.createServer(app);

mongoose
    .connect(process.env.MONGO_URL!)
    .then(() => {
        server.listen(PORT, () => {
            console.log(`server is listening on ${PORT}`);
        });
    })
    .catch((err) => {
        console.log("database connection failed. server didn't start.");
        console.log(err);
    });
node.js ssl axios localhost vite
1个回答
0
投票

如果浏览器显示错误,但页面加载,它可能只是向您报告某些连接加密正在工作,但还没有达到任何严重的现代水平。

大多数框架服务器都开启了 SSL,有点名义上的安全。

例如,本地主机在使用自动自签名证书时正在侦听。

您想要做的是从客户端服务器获取详细信息,以查看 SSL 握手在何处发生故障。

在现实世界中,SSL 可能会失败的其他方式有很多,不值得列出所有非常罕见的情况...但例如,系统时间可能不同步。

可能 - 默认情况下,只有浏览器会提供详细的错误信息。

如果您正在进行“dogfood”测试,您可以尝试使用

http:
URL,但请记住,这非常俗气,有可能不明确执行此操作。

© www.soinside.com 2019 - 2024. All rights reserved.