首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >404用于汇流json-rpc调用。

404用于汇流json-rpc调用。
EN

Stack Overflow用户
提问于 2013-10-08 09:52:36
回答 1查看 1.1K关注 0票数 0

我试图针对json编写汇流(用java语言)。然而,我得到了404。我知道我正在访问服务器并通过日志进行身份验证(基本auth):

代码语言:javascript
运行
AI代码解释
复制
2013-10-08 10:48:59,586 DEBUG [http-8090-2] [atlassian.seraph.filter.BaseLoginFilter] doFilter doFilter : ____ Attempting login for : '/confluence/rpc/json-rpc/confluenceservice-v2'
2013-10-08 10:48:59,586 DEBUG [http-8090-2] [atlassian.seraph.filter.PasswordBasedLoginFilter] login login : No user name or password was returned. No authentication attempt will be made.  User may still be found via a SecurityFilter later.
2013-10-08 10:48:59,586 DEBUG [http-8090-2] [atlassian.seraph.filter.BaseLoginFilter] doFilter doFilter : Login completed for 'null' - os_authstatus = 'null'
2013-10-08 10:48:59,587 DEBUG [http-8090-2] [atlassian.seraph.filter.SecurityFilter] doFilter doFilter : Storing the originally requested URL (atlassian.core.seraph.original.url=/confluence/rpc/json-rpc/confluenceservice-v2)

(很好,请参阅rpc调用)

代码语言:javascript
运行
AI代码解释
复制
2013-10-07 16:25:22,580 DEBUG [http-8090-2] [atlassian.seraph.auth.DefaultAuthenticator] login login : 'george' has been authenticated
2013-10-07 16:25:22,582 DEBUG [http-8090-2] [atlassian.seraph.auth.DefaultAuthenticator] authoriseUserAndEstablishSession authoriseUser : 'george' can login according to the RoleMapper
2013-10-07 16:25:22,584 DEBUG [http-8090-2] [net.sf.hibernate.SQL] log update logininfo set CURFAILED=?, TOTALFAILED=?, SUCCESSDATE=?, PREVSUCCESSDATE=?, FAILEDDATE=?, USERNAME=? where id=?
2013-10-07 16:25:22,586 DEBUG [http-8090-2] [atlassian.seraph.auth.DefaultAuthenticator] getUserFromBasicAuthentication getUserFromSession : Authenticated 'george' via Basic Auth
2013-10-07 16:25:22,587 DEBUG [http-8090-2] [atlassian.seraph.filter.SecurityFilter] doFilter doFilter : Setting Auth Context to be 'george'

但是对URL的帖子的响应

http://my.confluence.host.com:8090/confluence/rpc/json-rpc/confluenceservice-v2

带着一具身体

"{ \"jsonrpc\“:\”“2.0\”,\“方法\”:\"getServerInfo\",\"id\“:12345}”

返回404。

下一个日志条目是

代码语言:javascript
运行
AI代码解释
复制
2013-10-08 10:48:59,626 DEBUG [http-8090-2] [atlassian.seraph.filter.SecurityFilter] doFilter doFilter : Storing the originally requested URL (atlassian.core.seraph.original.url=/fourohfour.action)

插件已启用。

谢谢你的帮助!

守则:

代码语言:javascript
运行
AI代码解释
复制
@Test
public void test() {

  RestTemplate rt = new TestRestTemplate();

  String url = "http://my.confluence.host.com:8090/confluence/rpc/json-rpc/confluenceservice-v2";

  rt.getMessageConverters().add(new MappingJacksonHttpMessageConverter());
  rt.getMessageConverters().add(new StringHttpMessageConverter());
  String body = "{ \"jsonrpc\" : \"2.0\", \"method\" : \"getServerInfo\", \"id\" : 12345}";

  String returnValue = rt.postForObject(url, body, String.class);
}

private static final class TestRestTemplate extends RestTemplate {

  @Override
  protected ClientHttpRequest createRequest(URI url, HttpMethod method) throws IOException {
    ClientHttpRequest request = super.createRequest(url, method);

    String authentication = Base64.encode("george:password".getBytes());
    request.getHeaders().add("Authorization", "Basic " + authentication);
    return request;
  }
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-10-08 14:43:55

原来#(&*$文档)是错误的,而我得到404的原因是因为url不是

代码语言:javascript
运行
AI代码解释
复制
http://host:port/confluence/rpc/json-rpc/confluenceservice-v2

代码语言:javascript
运行
AI代码解释
复制
http://host:port/rpc/json-rpc/confluenceservice-v2

所以..。我得到404是因为..。是404。代码工作得很好,除了我必须为application/json添加一个内容类型的头之外。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19254810

复制
相关文章
Java xml数据格式返回实现
前言:对于服务器后端开发,接口返回的数据格式一般要求都是json,但是也有使用xml格式
全栈程序员站长
2022/09/13
1.3K0
Java xml数据格式返回实现
springMVC整合JAXB[通俗易懂]
由于项目中要用到将Java对象转为xml返回给调用者。选择使用JAXB,由于它是JDK自带的。不须要引入其它Jar包
全栈程序员站长
2022/07/06
8740
springMVC整合JAXB[通俗易懂]
JAXB应用实例
过往的项目中数据存储都离不开数据库,不过最近做的一个项目的某些数据(比如人员信息、菜单、权限等等)却完全没有涉及任何数据库操作,直接XML搞定。这里无意比较优劣,因为数据库存储和XML存储本就有不同的适用场景,盲目比较毫无意义,只是因为业务需要,仅此而已。先来概念一下——XML,可扩展标记语言,设计宗旨是用来传输数据而非显示数据,其遵循W3C标准,是一种通用的数据交换格式,具有很强的跨平台性,并且数据无需转换,所以,如果你要将数据做跨平台传输,那么把数据保存在 XML 文件中是有好处的。当然,这里要说明,
用户1615728
2018/04/17
3.7K0
JAXB应用实例
java JAXB 学习
JAXB(Java Architecture for XML Binding)是JDK的一部分,用于Object <-> XML的转换(有点类似于.NET中的XML序列化)。 1、创建XSD 可以使用
菩提树下的杨过
2018/01/24
1.5K0
java JAXB 学习
JAXB使用方式
JAXB(Java Architecture for XML Binding) 是一个业界的标准,是一项可以根据XML Schema产生Java类的技术。该过程中,JAXB也提供了将XML实例文档反向生成Java对象树的方法,并能将Java对象树的内容重新写到 XML实例文档。
HUC思梦
2020/09/03
2.5K0
手写编程语言-如何为 GScript 编写标准库
这是一个可以在线运行 GScript 脚本的网站,其本质原理是接收用户的输入源码从而在服务器上运行的服务;这简直就是后门大开的 XSS 攻击,为保住服务器我设置了运行 API 的后端服务的用户权限,这样可以避免执行一些恶意的请求。
crossoverJie
2022/12/20
4920
手写编程语言-如何为 GScript 编写标准库
何为真何为假
还记得第一个提出日心说的人是谁么? 没错, 哥白尼. 但是在那个年代, 所有人都认为太阳围绕着地球转的年代. 哥白尼的发现打破了大家的常识, 甚至于有过了很多年, 日心说才逐渐被大众所接受. 即使到了
烟草的香味
2020/06/09
9760
何为http,何为RPC?
RPC(即Remote Procedure Call,远程过程调用)和HTTP(HyperText Transfer Protocol,超文本传输协议)他们最本质的区别,就是RPC主要工作在TCP协议之上,而HTTP服务主要是工作在HTTP协议之上,我们都知道HTTP协议是在传输层协议TCP之上的,所以效率来看的话,RPC当然是要更胜一筹。
Java架构
2019/06/15
1.4K0
Java_数据交换_JAXB_用法入门
JAXB(Java Architecture for XML Binding) 是一个业界的标准,是一项可以根据XML Schema产生Java类的技术。该过程中,JAXB也提供了将XML实例文档反向生成Java对象树的方法,并能将Java对象树的内容重新写到 XML实例文档。
shirayner
2018/08/10
1.8K0
Java_数据交换_JAXB_用法入门
何为内存溢出,何为内存泄露
内存泄漏定义(memory leak):一个不再被程序使用的对象或变量还在内存中占有存储空间。
Java架构
2019/06/15
5.4K0
让你如“老”绅士般编写 Python 命令行工具的开源项目:docopt
在第一篇“初探 docopt”的文章中,我们初步掌握了使用 docopt 的三个步骤,了解了它不同于 argparse 的设计思路。那么 docopt 的使用模式都有哪些呢?其接口描述中都支持哪些语法规则呢?本文将带你深入了解 docopt。
HelloGitHub
2021/05/14
6850
[大佬] 何为"网络"
1945年,冯诺依曼发明了世界上第一台电子计算机。截止到今天,计算机经过了76年的发展,互联网已把全世界几十亿人所拥有或使用或租用的各级计算机,连接在了一起。同时,也把这么多人的心,局部或全部,给拽进去了互联网内。
科控物联
2022/03/29
2760
何为BFC?
何为BFC? BFC(Block Formatting Context),简单讲,它是提供了一个独立布局的环境,内部不会影响外部布局,反之亦然,每个BFC都遵守同一套布局规则。 如何创建BFC? float:left|right position:absolute|fixed display: table-cell|table-caption|inline-block|flex | inline-flex overflow: hidden|scroll|auto BFC有何特性? 内部的Box会在垂直方向,
前端黑板报
2018/01/29
5660
何为实在
image.png 推荐语: 霍金的《大设计》(The Grand Design)与其说是本科普读物,莫如说是相关“实在与终极”的著作。过去几千年间,这个领域更多是哲学家的禁脔。但,二战以降,哲学渐死,已完全跟不上现代科学发展的步伐。忧心于此,霍金此次似乎不得不替哲学家当了回“临时工”。 全书共八章,《存在之谜》、《定律规则》、《何为实在》、《可择历史》、《万物理论》、《选择宇宙》、《表观奇迹》和《伟大设计》,精华是前三章,核心则在《何为实在》。霍金选择了依赖模型的“实在观”:所谓“实在”
腾讯研究院
2018/01/19
9270
何为实在
何为GraphQL?
GraphQL是一种新型的,令人兴奋的,用于特定查询和操作的API。它非常灵活并且有很多好处。 它特别适合以图形和树型为组织的数据。Facebook在2012年研发出了GraphQL并在2015年将其开源。
前端达人
2018/10/18
3.5K1
何为GraphQL?
首发!DevOps@BOC — 器用之道,如琢如磨
我来自中国银行软件中心的一个开发部门,中国银行软件中心从 2013年开始试点敏捷软件开发以及相关CI、CD等实践,而我们内部真正的提 DevOps 比这个要更晚些。
DevOps时代
2018/10/08
1K0
首发!DevOps@BOC — 器用之道,如琢如磨
让你如绅士般基于描述编写 Python 命令行工具的开源项目:docopt
在本系列前面四篇文章中,我们介绍了 argparse 的方方面面。它无疑是强大的,但使用方式上略显麻烦。需要先设置解析器,再定义参数,再解析命令行,最后实现业务逻辑。
HelloGitHub
2021/05/14
3580
如何为非常不确定的行为(如并发)设计安全的 API,使用这些 API 时如何确保安全
.NET 中提供了一些线程安全的类型,如 ConcurrentDictionary<TKey, TValue>,它们的 API 设计与常规设计差异很大。如果你对此觉得奇怪,那么正好阅读本文。本文介绍为这些非常不确定的行为设计 API 时应该考虑的原则,了解这些原则之后你会体会到为什么会有这些 API 设计上的差异,然后指导你设计新的类型。
walterlv
2023/10/22
2180
Java使用JAXB对XML设置属性和属性值
复杂点的原因是名称带有冒号,属性也是,没有操作过JAXB是不容易上手,我来记录下实体的代码。
高久峰
2023/10/12
6320
何为求解器?
最近学习到的关于求解器的新知识总结。首先求解器是用在数学规划问题中的常见工具,那么问题来了,数学中用到的工具和供应链业务有什么相关呢?我们还要继续再往前走一步,看看数学规划问题能为我们解决些什么业务问题。带着这些疑惑请耐心往下看,文章较长。
Act
2021/07/27
10K2

相似问题

新内存管理和删除内存管理

40

内存管理

60

管理内存

11

内存管理

10

内存管理

39
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档