基本上,当我尝试使用全栈 React 和 ASP.NET Core 在 Visual Studio 下运行我的项目时,我收到此错误
"C:\Program Files\nodejs\node.exe" --import file:/C:/Program%20Files/JetBrains/WebStorm%202024.2.4/plugins/nodeJS/js/ts-file-loader/node_modules/tsx/dist/loader.cjs "C:\Users\main\Documents\Programming\Project and Freelance\projects\VehicleRentalProject\vehiclerentalproject.client\vite.config.ts"
将 HTTPS 开发者证书导出到文件时出错。
文件:///C:/Users/main/Documents/Programming/Project%20and%20Freelance/projects/VehicleRentalProject/vehiclerentalproject.client/vite.config.ts:1
从“node:url”导入{fileURLToPath,URL};导入{defineConfig}
from"vite";从"@vitejs/plugin-react"导入插件;从"fs"导入fs;从"path"导入路径;从"child_process"导入child_process;从"process"导入{env};const baseFolder= env.APPDATA!==void 0&&env.APPDATA!==""?:${env.APPDATA}/ASP.NET/https
;constcertificateName="vehiclerentalproject.client";const certFilePath=path.join(baseFolder,${env.HOME}/.aspnet/https
);const keyFilePath= path.join(baseFolder,${certificateName}.pem
);if(!fs.existsSync(certFilePath)||!fs.existsSync(keyFilePath)){if(0!==child_process.spawnSync("dotnet",["dev-certs ","https","--export-path",certFilePath,"--format","Pem","--no-password"],{stdio:"inherit"}).status){抛出新错误(“无法创建证书。”)}}const target=env.AS PNETCORE_HTTPS_PORT?${certificateName}.key
:env.ASPNETCORE_URLS?env.ASPNETCORE_URLS.split(";")[0]:"https://localhost:7017";var vite_con Fig_default=defineConfig({plugins:[plugin()],resolve:{alias:{"@":fileURLToPath(new URL("./src",import.meta.url))}},服务器:{代理:{ "^/weatherforecast":{target,secure:false}},port:5173,https:{key:fs.readFileSync(keyFilePath),cert:fs.readFileSync(certFilePath)}}});export{vite_config_default 默认} ; > 错误:无法创建证书。https://localhost:${env.ASPNETCORE_HTTPS_PORT}
我检查了路径,证书已经存在。另外,Angular ASP.NET Core 端似乎也存在类似的 bug,通过修改
aspnetcore-https.js
文件解决了这个问题
const baseFolder = //etc...
fs.mkdirSync(baseFolder, { recursive: true });
但我找不到
aspnetcore-https.js
文件,甚至找不到它的等效文件。
这个问题已经讨论过here。这是一个.Net 8构建错误,版本> = 8.0.403受此错误影响,您可以尝试切换回以前的版本