【问题标题】:Sveltekit error: self signed certificate in certificate chainSveltekit 错误:证书链中的自签名证书
【发布时间】:2022-06-16 07:17:18
【问题描述】:

我发生了一件奇怪的事情。我第一次使用 sveltekit,在我的项目中,我打算调用一个 api 来获取数据并得到错误:request to '' failed, reason: self signed certificate in certificate chain. 和这是在 sveltekit 加载功能中。当我在组件的 onMount 中做同样的事情时,它就像一个魅力。

所以我决定使用 sveltekit 演示模板从头开始一个新项目。并且无需更改任何内容,进入待办事项页面并获得相同的内容:

请求 https://api.svelte.dev/todos/98e351d 失败,原因:证书链中的自签名证书 FetchError:请求 https://api.svelte.dev/todos/98e351d 失败,原因:证书链中的自签名证书 在客户端请求。 (file:///C:/Users/myuser/Desktop/my-app/node_modules/@sveltejs/kit/dist/install-fetch.js:6246:11) 在 ClientRequest.emit(节点:事件:390:28) 在 TLSSocket.socketErrorListener (节点:_http_client:447:9) 在 TLSSocket.emit(节点:事件:390:28) 在emitErrorNT(节点:内部/流/销毁:157:8) 在 emitErrorCloseNT (node:internal/streams/destroy:122:3) 在 processTicksAndRejections (node:internal/process/task_queues:83:21)

演示模板不应该在没有任何证书的情况下工作吗?因此决定在另一台计算机上启动演示模板。在那里,待办事项页面可以正常工作。没有任何错误。我四处寻找有类似问题的人,有很多人收到自签名证书错误,但与 sveltekit 无关或与我的问题类似。

有什么想法吗?谢谢。

【问题讨论】:

  • 您使用的是具有 VPN 或代理的工作/学校计算机吗?如果是这样,请尝试禁用 VPN/代理,看看是否遇到相同的错误。

标签: svelte sveltekit self-signed-certificate


【解决方案1】:

因为 SvelteKit 使用 SSR,所以当您从外部 onMount 获取 URL 时,SvelteKit 在服务器端处理它(即通过 node.js)。但是,当您从 onMount 获取 URL 时,它会在客户端进行处理(即通过浏览器)。

我认为您的自签名证书已安装在浏览器中,但未安装在 node.js 中。这就是当您从 onMount 外部而不是从 onMount 内部获取 URL 时发生错误的原因。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-08-24
    • 2017-12-18
    • 2015-09-08
    • 1970-01-01
    • 1970-01-01
    • 2019-01-23
    • 2018-03-26
    • 2019-12-16
    相关资源
    最近更新 更多