使用Azure SWA CLI搭建Blazor WASM本地环境时localhost:4280无法访问
解决Blazor WASM + SWA CLI本地访问4280端口拒绝连接的问题
针对你遇到的SWA模拟器启动正常但localhost:4280无法访问的问题,可以尝试以下排查和修复步骤:
1. 检查4280端口是否被占用
Windows系统打开命令提示符执行:
netstat -ano | findstr :4280
若输出显示有进程占用该端口,记录PID后用任务管理器结束对应进程,再重新运行swa start。也可直接指定其他端口启动模拟器:
swa start --port 4281
2. 修正配置文件路径格式
将swa-cli.config.json中的outputLocation路径从反斜杠改为正斜杠(适配CLI跨平台解析逻辑):
{ "$schema": "https://aka.ms/azure/static-web-apps-cli/schema", "configurations": { "blazor-app3": { "appLocation": ".", "outputLocation": "bin/wwwroot", "appBuildCommand": "dotnet publish -c Release -o bin", "run": "dotnet watch run", "appDevserverUrl": "http://localhost:5050" } } }
同时手动执行dotnet publish -c Release -o bin,确认bin/wwwroot目录是否生成了完整的静态文件,确保SWA CLI能找到代理资源。
3. 分离启动流程测试
先手动启动Blazor开发服务器:
dotnet watch run
待http://localhost:5050正常运行后,单独启动SWA CLI并直接指向该地址:
swa start http://localhost:5050
这种方式跳过配置文件的自动启动逻辑,验证SWA代理功能是否正常。
4. 更新SWA CLI到最新版本
旧版本CLI可能存在兼容性bug,执行更新命令:
npm update -g @azure/static-web-apps-cli
更新完成后重新运行swa start测试。
5. 排查防火墙/安全软件拦截
本地防火墙、杀毒软件或浏览器安全插件可能拦截了4280端口的连接,暂时关闭相关软件后再次访问localhost:4280,若能正常访问,需为SWA CLI添加端口允许规则。
内容的提问来源于stack exchange,提问作者Emad Gabriel
相关产品推荐
相关产品推荐

