gpt4 book ai didi

java - 尝试通过 java 中的 Rally API 创建/更新/删除/查询 Rally 时出现 HTTP/1.1 401 Unauthorized Exception

转载 作者:行者123 更新时间:2023-12-01 13:34:07 25 4
gpt4 key购买 nike

尝试通过java中的Rally API创建/更新/删除/查询Rally时出现HTTP/1.1 401 Unauthorized Exception

// Create and configure a new instance of RallyRestApi
RallyRestApi restApi = new RallyRestApi(new URI("https://rally1.rallydev.com"),"sphoortix.patil@foo.com", "Foo@123");
restApi.setWsapiVersion("v2.0");
restApi.setApplicationName("Add Test Case Result");


//Query User
QueryRequest userRequest = new QueryRequest("User");
String workSpace = userRequest.getWorkspace();
userRequest.setFetch(new Fetch("UserName", "Subscription", "DisplayName"));
userRequest.setQueryFilter(new QueryFilter("UserName", "=", "sphoortix.patil@foo.com"));
QueryResponse userQueryResponse = restApi.query(userRequest);
JsonArray userQueryResults = userQueryResponse.getResults();
JsonElement userQueryElement = userQueryResults.get(0);
JsonObject userQueryObject = userQueryElement.getAsJsonObject();
String userRef = userQueryObject.get("_ref").getAsString();

// Query for Test Case to which we want to add results
QueryRequest testCaseRequest = new QueryRequest("TestCase");
testCaseRequest.setFetch(new Fetch("FormattedID","Name"));
testCaseRequest.setQueryFilter(new QueryFilter("FormattedID", "=", "TC1147"));
QueryResponse testCaseQueryResponse = restApi.query(testCaseRequest);
JsonObject testCaseJsonObject = testCaseQueryResponse.getResults().get(0).getAsJsonObject();
String testCaseRef = testCaseQueryResponse.getResults().get(0).getAsJsonObject().get("_ref").getAsString();

我得到Exception in thread "main" java.io.IOException: HTTP/1.1 401 Unauthorized

每次 restap.get 都会出现异常; restapi.createrestapi.query

我不知道可能是什么问题,我认为这一定是由于 SSO 问题,并且还发现消息来源说,当您尝试通过 Rally API 进行操作时,Rally APIS 需要安全 token 。引用Rally Web Services API Documentation v2.0/Autorization

请指导/帮助。

最佳答案

Rally 的 SDK 工具包尚不支持 SSO。如果您的组织使用 SSO,您需要让 Rally 管理员将您的用户 ID 添加到白名单中,以便您可以使用 SSO/Rally 凭据。

请注意,Java REST 工具包将为您处理所有身份验证 token 管理,因此您无需担心获取或维护 API 身份验证 key 。 java 工具包会为您做到这一点。

最后一种可能性可能是您和 Rally 之间有代理服务器。如果是这种情况,您可以通过以下方式配置代理:

restApi.setProxy(new URI(代理服务器));

关于java - 尝试通过 java 中的 Rally API 创建/更新/删除/查询 Rally 时出现 HTTP/1.1 401 Unauthorized Exception,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21394938/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com