"伙伴"是一款强大的企业协同办公软件,目前版本是1.0,但还没有提供桌面客户端。对于通知、私信、提醒等,无法实时接收。
于是就想自己实现一个简单的民间版客户端。
大体思路及用到的技术:
1,首先向服务端发送Post请求实现登录,然后通过CookieContainer类来保证以后的请求可以携带着登录后的身份令牌。
要注意的是Post请求需要设置ContentType="application/x-www-form-urlencoded";另外“伙伴”系统为了方式CSRF攻击,增加了Token验证机制,所以Post之前需要先Get一下html,然后解析出token,post时作为一个Form字段发送。
2,解析返回的html可以获取信息,解析html可以采用强大的HtmlAgilityPack。
3,有些数据请求到的是json, 通过Newtonsoft.Json转换成C#对象。
4,使用Wix制作一键安装包。