java - 坩埚 REST API : Can't add reviewer

标签 java rest atlassian-crucible

我正在尝试使用 Crucible REST API 将评论者添加到我刚刚创建的评论中(也使用 REST)。根据 Atlassian 文档,我应该发帖至:

/rest-service/reviews-v1/{id}/reviewers

用什么?文档没有显示添加审阅者的有效请求。当您点击“展开”时,它不会显示任何内容,只会显示“逗号分隔的审稿人”,这似乎不起作用。

我试过:

user1,user2

{"user1","user2"}

{reviewers:[reviewer:{"userName":"user1"},reviewer:{"userName":"user2"}]}

所有这些都会导致以下响应:

{"code":"NotFound","message":"The user named '{\"user1\"' is not a Crucible user.","stacktrace":"com.atlassian.crucible.spi.services.NotFoundException: The user named '{\"user1\"' is not a Crucible user.
at com.atlassian.crucible.spi.impl.DefaultReviewService.getUser(DefaultReviewService.java:2011)
at com.atlassian.crucible.spi.impl.DefaultReviewService.access$3500(DefaultReviewService.java:95)
at com.atlassian.crucible.spi.impl.DefaultReviewService$32.doInTransaction(DefaultReviewService.java:1973)
at com.atlassian.crucible.spi.impl.DefaultReviewService$32.doInTransaction(DefaultReviewService.java:1965)
at com.atlassian.fisheye.spi.impl.DefaultTxTemplate.execute(DefaultTxTemplate.java:123)
at sun.reflect.GeneratedMethodAccessor1317.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:309)
...

那个堆栈跟踪继续......

user1user2 是有效名称,因为当我对同一 URL 执行 GET 操作时,我可以在其他评论中看到它们。

有人有什么想法吗?

谢谢!

最佳答案

好吧,尽管如此,以下是将评论者添加到现有评论的方法:

  1. 对 Crucible URL 进行 POST:protocol://server:port/context/rest-service/reviews-v1/{id}/reviewers

  2. 帖子正文应包含文字值:user1,user2,user3

  3. 抵制对数据进行 JSON 化的冲动 - 没有引号、括号、标签等。它实际上是要添加的用户名的逗号分隔列表。

  4. 不要期待来自服务器的响应,它似乎返回状态代码 204。虽然这作为一个 Restful 响应是可以接受的,但它看起来很奇怪,因为当您执行 POST 以确认工作已完成。

为了公平起见,文档确实详细说明了要发送的数据:

“逗号分隔的审稿人列表”

但是文档可能应该用一个例子来更新,因为我认为有人(至少对我来说)假设在使用 RESTful API 时,他们需要将数据格式化为 JSON 是正常的。此外,文档应该更谨慎地说明服务器不会在成功时发送响应。也就是说,恕我直言。

希望对某人有所帮助!

关于java - 坩埚 REST API : Can't add reviewer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15504700/

相关文章:

Java,通过在while循环中嵌套if then else来计算总收入

java - XPage:是否可以从 Java 调用 SSJS 函数?

git - 有没有办法跟踪 Atlassian Crucible 中分支的 merge 前和 merge 后代码审查

java - Jetty JDBCLoginService 基于角色的访问不起作用

java - Spring 安全奇怪的行为

.net - WCF Web API 与 ASP.NET MVC JSON Web 服务

java - 用Java输出Restful Web服务的请求头

rest - 制作只读 REST 接口(interface)的约定?

patch - Crucible 试图锚定您的补丁,但存在冲突的内容

svn - 推荐一个好的同行代码审查工具?