You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Postman无法调用IIS部署的.NET7+EF API,浏览器可正常访问

问题分析与解决方案

可能的原因及对应解决步骤

1. Postman本地网络/缓存问题

  • 关闭Postman代理:进入Postman设置(Settings)→ Proxy,选择「Use system proxy」或直接关闭代理选项,避免代理拦截请求导致连接拒绝。
  • 清除Postman DNS缓存:进入设置→ General,找到「Clear DNS Cache」按钮点击,或直接重启Postman,解决DNS解析缓存过期的问题。
  • 重置请求会话:删除当前请求的缓存数据,比如重新输入API URL,或新建一个空白请求测试,排除旧会话的异常数据干扰。

2. IIS服务器端配置问题

  • 检查应用池状态:打开IIS管理器,查看目标站点对应的应用池是否处于运行状态。若频繁回收,可调整应用池回收规则(比如取消固定时间回收,或增加快速失败保护的阈值),避免应用池意外停止。
  • 调整IIS连接限制:在站点的「高级设置」中,修改「最大连接数」为合理值(默认1000,可根据并发需求调高),防止因连接数耗尽导致新请求被拒绝。
  • 排查请求头拦截:对比浏览器/Laravel的请求头与Postman的差异,尝试移除Postman的Postman-Token请求头,或把User-Agent改为浏览器标识(如Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36),测试是否被IIS的请求过滤模块拦截。
  • 检查服务器防火墙:临时关闭服务器防火墙测试,或在防火墙规则中添加允许你本地IP访问服务器端口的规则,避免防火墙误判Postman请求为恶意流量。

3. 代码部署后的潜在问题

  • 验证部署的配置文件:确认服务器上的appsettings.json等配置文件与本地一致,尤其是数据库连接字符串、CORS设置(虽然浏览器能访问,但需确保Access-Control-Allow-Origin未限制特定来源)。
  • 检查数据库连接泄漏:确认代码中EF Core的DbContext是否通过using语句正确释放,或依赖注入的生命周期配置正确(比如用Scoped而非Singleton),避免连接池耗尽导致请求失败。
  • 查看错误日志:检查IIS日志(路径:C:\inetpub\logs\LogFiles)和Windows事件查看器的应用程序日志,查找.NET应用的异常信息,定位代码修改后可能引入的潜在问题。

内容的提问来源于stack exchange,提问作者Virell

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 06:16:08