【发布时间】:2019-08-21 17:48:59
【问题描述】:
我在使用 HTTPS 时遇到 nuxt 服务器端 API 调用问题。在客户端,一切都很好,当我通过链接在客户端切换页面时,API 可以工作,但是当我按下 Ctrl + f5 并且数据将在服务器端预取时,实际上没有 API 调用,也没有提供数据。即使没有抛出任何错误,但使用普通 HTTP 一切都可以正常工作。
在我的生产服务器 nodejs 版本 - v10.9.0 对于使用通过我的 nodejs 网络托管服务提供商提供的 SNI SSL 的 HTTPS 即时通讯
这个问题类似于: https://github.com/nuxt/nuxt.js/issues/2934 除了那里提供的解决方案对我不起作用。
已编辑:
这是 axios 进入 nuxtServerInit 后我进入 store.js 的错误: '无法验证第一个证书'
编辑 2:
之后我发现:https://forum.vuejs.org/t/nuxtserverinit-with-axios-unable-to-verify-the-first-certificate/31010
我应用了扩展 axios 的插件:
插件/axios.js:
import https from 'https';
export default function ({ $axios }) {
$axios.defaults.httpsAgent = new https.Agent({ rejectUnauthorized: false });
}
nuxt.config.js:
plugins: [
'@/plugins/axios',
]
它现在在服务器端和客户端一样好用。但我还有另一个问题。这个解决方案安全吗?
【问题讨论】:
-
你使用 nuxt/axios 吗?您是否尝试记录 API 调用的输出并查看其中的内容?
-
谢谢你的建议,愚蠢的我。是的,我在 Axios 中使用 nuxt。最后我管理如何得到错误。这就是我在 store.js 中的 catch 块中得到的内容,我在服务器端调用 API:'无法验证第一个证书'
-
检查它捆绑了所有中间证书
标签: javascript ssl https server nuxt.js