axios错误无法验证叶子签名

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

我申请使用字典 API,并被询问我将使用它的 URL,我选择了 locahost:19006,因为这是本地服务器打开的位置。我有 API 密钥,但由于某种原因我遇到了 CORS 问题。所以我尝试通过代理服务器获取它,但我收到此错误:

Error: AxiosError: unable to verify the first certificate
    at TLSSocket.onConnectSecure (node:_tls_wrap:1530:34)
    at TLSSocket.emit (node:events:390:28)
    at TLSSocket._finishInit (node:_tls_wrap:944:8)
    at TLSWrap.ssl.onhandshakedone (node:_tls_wrap:725:12) {
  code: 'UNABLE_TO_VERIFY_LEAF_SIGNATURE'

这是 proxyServer.js:

const app = express();
app.use(cors());

const https = require("https");
const agent = new https.Agent({
  rejectUnauthorized: false,
});

app.get("/words", async (req, res) => {
  await axios
    .get(
      `https://krdict.korean.go.kr/api/search?certkey_no=4013&key=${API_KEY}&type_search=search&part=word&q=%EB%82%98%EB%AC%B4&sort=dict`,
      { agent }
    )
    .then((response) => {
      console.log("Response:", response.data);
    })
    .catch((error) => console.log("Error:", error));
});

app.listen(3000, () => console.log("listening on port 3000"));

有谁知道如何解决吗?

reactjs axios
2个回答
0
投票

这对我有帮助。谢谢。我在 Nextjs 服务器操作上测试得很好。


-1
投票
import axios from 'axios'
import https from 'https'
import { API_HOST } from './config'

const instance = axios.create({
    baseURL: API_HOST,
})

instance.defaults.httpsAgent = new https.Agent({
    rejectUnauthorized: false,
})

instance.interceptors.request.use(
    (config) => {
        return config
    },
    (error) => {
        return Promise.reject(error)
    }
)

我用的是这个配置。 这解决了我的问题。

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