Vue.js 如何在vue应用程序中导入自签名证书

Vue.js 如何在vue应用程序中导入自签名证书,vue.js,certificate,Vue.js,Certificate,我使用keytool(JavaSDK)为java Spring中构建的API生成了一个自签名PKCS-12证书。然后,我在Chrome证书中导入了相同的证书,但我不明白为什么在运行应用程序时没有使用该证书。它似乎生成了自己的本地主机证书。这是我的vue.config.js: let fs = require('fs') module.exports = { devServer: { host: "localhost", port: "8081", https: {

我使用keytool(JavaSDK)为java Spring中构建的API生成了一个自签名PKCS-12证书。然后,我在Chrome证书中导入了相同的证书,但我不明白为什么在运行应用程序时没有使用该证书。它似乎生成了自己的本地主机证书。这是我的vue.config.js:

let fs = require('fs')

module.exports = {
  devServer: {
    host: "localhost",
    port: "8081",
    https: {
      ca: fs.readFileSync('C:\\Projects\\LicentiaUtilities\\books.p12')
    },
  }
}

PKCS12格式是否不受支持?我应该转换成其他格式吗?

您的证书在本地主机上不起作用,所有证书都只对域名起作用

无法为IP地址或本地主机颁发SSL证书;您必须具有为其创建证书的实际名称。为了得到这样一个名字,你需要一个DNS。由于您无权访问该本地网络的内部DNS,因此必须为此使用公共DNS服务器


如果你要发布你的应用程序,我建议你使用nginx,添加ssl证书并为NodeJS实例创建反向代理非常简单。

我的想法是使用自签名证书,当然只是为了测试目的,因为它在生产环境中不起作用。@2eety如果你只需要用于测试目的的ssl,我明白了,你应该去ngrok.com/Ah看看,因为我知道它会生成一个随机域,不再是本地主机。当然,我真的不知道它在引擎盖下是如何工作的,但这应该是可行的。另外,一直困扰我的是,我生成了证书,它可以与postman一起工作(在导入证书之后),这就是为什么我认为它也应该与浏览器一起工作。