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

部署于Azure的Office-js Addin调用Web API出现Fetch错误求排查

Office JS Addin 调用Azure容器化ASP.NET Core API 报failed to fetch 排查清单
  • 检查Office Addin清单配置:必须在清单文件的<AppDomains>节点中添加Web API的根域名,Office运行时会拦截所有未在清单中声明的外部域名请求,本地localhost默认豁免但线上域名必须显式声明
  • 检查HTTPS配置合规性:Office JS强制要求所有外部请求必须走HTTPS协议,禁止HTTP请求。需确认:
    • Azure容器实例的Web API已配置有效的公网SSL证书,不可使用自签名证书
    • Addin中Fetch调用的API地址前缀为https://,不存在硬编码HTTP的情况
    • ASP.NET Core服务已启用TLS 1.2及以上版本,禁用低版本TLS协议
  • 检查CORS配置有效性:
    • 确保ASP.NET Core的CORS中间件注册在所有中间件的最前面,优先于授权、路由等中间件,避免OPTIONS预检请求被其他中间件拦截返回401/405错误
    • CORS规则需显式允许OPTIONS请求方法,同时如果请求带身份凭证,需开启AllowCredentials()配置
    • 核对CORS允许的源地址与线上Addin的实际访问地址完全一致,不要多末尾斜杠、不要混淆http/https协议头
  • 检查Fetch请求参数配置:如果API需要Cookie/身份凭证,Fetch请求需显式配置credentials: 'include'、mode: 'cors'参数
  • 检查Azure容器实例网络配置:
    • 确认容器的端口映射正确,容器内服务端口与ACI暴露的公网端口(通常为443)匹配
    • 若绑定了网络安全组(NSG),需放行入站443端口的所有公网访问,或显式放行Office 365服务IP段
  • 排查请求链路:打开Addin运行的浏览器开发者工具,查看Network面板的请求详情:
    • 若OPTIONS预检请求被浏览器直接拦截,优先排查清单AppDomains配置、CORS源地址匹配问题
    • 若OPTIONS请求返回4xx/5xx错误,优先排查Web API的CORS中间件顺序、方法允许规则

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 12:06:01