调试ASP.NET Core 2.0应用时Edge弹出“需新应用打开localhost”的原因?
问题原因及解决思路
这种情况我之前碰到过好几次,最可能的原因和对应解决办法如下:
1. 空响应触发Edge的异常处理
你的MyMessagesController的Index方法没有编写具体逻辑,默认会返回EmptyResult(HTTP状态码204 No Content)。Edge浏览器对这种完全没有响应内容的请求处理比较“敏感”,会错误判定这不是标准网页响应,进而弹出“需要新应用打开”的提示;而IE11对空响应的兼容性更好,只会显示空白页面。
2. 快速解决办法
给Index方法添加返回内容即可,比如:
public IActionResult Index() { // 要么返回视图(需确保对应视图文件存在) return View(); // 或者返回简单文本内容 // return Content("My Messages Page"); }
添加后请求会返回正常的200状态码和网页内容,Edge就不会再弹出提示了。
3. 其他排查方向
如果添加返回内容后问题仍存在,可以试试:
- 检查路由配置:确保项目的路由模板(比如默认的
{controller=Home}/{action=Index}/{id?})能正确匹配MyMessages/Index路径。 - 测试Edge隐私窗口:打开隐私窗口访问该地址,排除缓存或浏览器扩展的干扰。
- 重置Edge协议关联:在Edge设置的“默认浏览器”板块,确认HTTP和HTTPS协议都关联到Edge,必要时点击“重置为默认”。
内容的提问来源于stack exchange,提问作者IEnjoyEatingVegetables
相关产品推荐
相关产品推荐

