公司所在的是工程检测行业,须要管理30个现场工程团队的检测报告,目前用的是Confluence知识管理系统,用于管理检测报告,将来可能还会基于检测报告作 天然语言分析处理。git
百度百科是这么解释Confluence的:github
Confluence为团队提供一个协做环境。在这里,团队成员齐心合力,各擅其能,协同地编写文档和管理项目。今后打破不一样团队、不一样部门以及我的之间信息孤岛的僵局,Confluence真正实现了组织资源共享。api
目前计划开发一个桌面的报告管理工具,实现相似SVN+百度云盘之类的效果,服务器和数据仓库已经在用Confluence了,因此就须要开发一套桌面端应用。服务器
但目前网上相关基于Confluence都是作的Python、C++之类的接口,团队对.NET比较熟悉,因此就花了几天时间研究了下Confluence的RPC/XML协议。eclipse
参考:https://developer.atlassian.com/confdev/deprecated-apis/confluence-xml-rpc-and-soap-apis,还用了Wireshark抓包工具。工具
最后在基于.NET XML/RPC的协议上实现了Confluence的 C# API。url
Confluence DotNet API如今能作什么spa
使用实例:code
private ConfluenceClient confluenceClient; private string token; private string username = "username"; private string password = "password"; private string confluence_url = "http://your_confluence_site/rpc/xmlrpc"; [SetUp] public void SetUp() { confluenceClient = new ConfluenceClient(confluence_url); var authenticate = confluenceClient.Authenticate(username, password, ref token); Assert.IsTrue(authenticate); }
完整源代码参考:xml