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

使用Atlassian-crowd-client与Sails.js对接Crowd认证失败求助

排查Crowd身份认证返回"Invalid Response from Crowd, expecting JSON"错误

我帮你分析下这个问题,核心原因是你的请求目标返回的不是JSON格式数据,结合你的代码来看,主要有两个关键问题:

1. BaseUrl配置错误

你现在填的baseUrl: 'http://my-host/crowd/console/login.action'是Crowd的登录页面URL,这个页面返回的是HTML页面,不是API接口需要的JSON响应。Atlassian Crowd的API base URL应该指向它的REST接口根路径,通常格式是:
http://your-crowd-domain/crowd/rest/usermanagement/latest/
(如果是Crowd 3.x+版本,也可能是/crowd/rest/开头,具体可以参考Crowd的API文档确认)

2. 请求头配置格式错误

你代码里直接把"Content-Type":"application/jso..."写在初始化参数里是不对的,这个应该放在headers字段下,而且内容要完整写成application/json。

修正后的示例代码

var atlassianCrowdClient = require('atlassian-crowd-client');
var crowd = new atlassianCrowdClient({
    baseUrl: 'http://my-host/crowd/rest/usermanagement/latest/', // 改成正确的API根路径
    application: { 
        name: 'app-name', 
        password: 'app-password' 
    },
    headers: { // 正确配置请求头
        "Content-Type": "application/json"
    }
});

额外排查点

  • 确认你的Crowd应用账号(app-name和app-password)已经在Crowd后台正确配置,并且拥有对应的API访问权限
  • 测试baseUrl是否能正常访问:直接在浏览器或Postman里访问这个URL,应该返回JSON格式的API说明或响应,而不是HTML页面
  • 检查网络连接,确保你的Sails.js服务能正常访问Crowd服务器

内容的提问来源于stack exchange,提问作者fariba.j

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.22 09:31:13