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

Apache Unomi Web Tracker测试报415 Unsupported Media Type错误

Apache Unomi Web Tracker 415 Unsupported Media Type 错误排查与解决

415错误的核心原因是Unomi服务端无法识别请求携带的媒体类型(Content-Type),按以下步骤逐一排查修复:

  • 检查请求Content-Type配置
    打开浏览器开发者工具「网络」面板,定位到报错的POST /cxs/context.json请求,查看请求头的Content-Type字段:
    • 若字段值为空、为text/plain或application/x-www-form-urlencoded:是Tracker初始化时未正确设置请求头导致,在Tracker初始化代码中补充ajax配置即可:
      // 原有unomi初始化配置保留,补充ajax头设置
      unomi.initialize({
        contextServerUrl: "http://localhost:8181",
        siteId: "你的站点ID",
        ajax: {
          contentType: "application/json"
        }
      });
      
    • 若字段值为application/json; charset=utf-8:1.6.x之前的旧版Unomi接口校验逻辑不识别带charset后缀的Content-Type,会直接返回415,两种修复方式二选一:升级Unomi到1.6及以上稳定版本,或修改unomi-tracker.js的ajax发送逻辑,去掉charset参数,仅保留application/json作为Content-Type值。
  • 检查跨域(CORS)配置
    你当前从非8181端口的页面请求Unomi服务属于跨域场景,若Unomi的CORS配置错误,预检请求被拦截时也可能返回415错误:
    1. 进入Unomi安装目录的etc文件夹,找到或新建org.apache.unomi.web.cfg配置文件
    2. 添加/修改以下配置项:
    org.apache.unomi.web.cors.allowed.origins=http://localhost,http://127.0.0.1
    org.apache.unomi.web.cors.allowed.methods=GET,POST,OPTIONS,HEAD
    org.apache.unomi.web.cors.allowed.headers=Content-Type,Authorization,X-Requested-With,Accept,Origin
    org.apache.unomi.web.cors.support.credentials=true
    
    1. 重启Unomi服务使配置生效。
  • 检查Tracker脚本版本匹配度
    你当前使用的是自行部署在/tracker/路径下的unomi-tracker.js,若脚本版本和Unomi服务端版本跨大版本(比如服务端是2.x版本,脚本是1.x版本),请求构造逻辑不兼容也会触发该错误。优先直接引用Unomi服务自带的Tracker脚本http://localhost:8181/unomi-tracker.js做测试,排除版本不匹配问题。
  • 检查接口匿名访问权限
    若Unomi开启了接口安全校验,/cxs/context.json未加入匿名访问白名单时,部分安全过滤器会直接返回415而非401/403错误。打开etc/org.apache.unomi.security.cfg配置文件,确认org.apache.unomi.security.anonymous.urls配置项中包含/cxs/context.json路径,允许事件上报接口匿名访问。

内容的提问来源于stack exchange,提问作者Neveen S.Nagy

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.01 05:33:23