前段时间,用钉钉进行了服务器端的开发,对照着官方文档,感觉还是比较顺利的。后续想有时间研究一下PC端客户端的开发,看着官方文档,说的确实是比较简练,但也确实没看太明白,废了半天劲也没成功。后来经过无数次尝试,发现期待的弹窗竟然出现了,为了让其他人少走弯路,下面将自己的心得记录如下:
钉钉PC客户端开发注意事项:
1、必须有公网IP或者合法的域名(可怜没有,只能用github子域名作为域名了);
2、必须在钉钉的浏览器中才能(即钉钉客户端、或者钉钉手机端)
3、如果是HTTPS协议,那么不能引用外域的JS文件,需要将JS文件放到HTML页面中;
4、签名等配置信息必须正确且未过期(签名生成可以参照https://debug.dingtalk.com/)
第一步:建立一个微应用,配置如下:
第二步:获取时间戳timestamp
timestamp是当前时间戳,具体值为当前时间到1970年1月1号的秒数。可以用C#代码来获取:
/// <summary>
/// 获取时间戳timestamp(当前时间戳,具体值为当前时间到1970年1月1号的秒数)
/// </summary>
/// <returns></returns>
public static string GetTimeStamp()
{
TimeSpan ts = DateTime.UtcNow - new DateTime(, , , , , , );
return Convert.ToInt64(ts.TotalSeconds).ToString();
}
这里获取的值为:1461565921。
第三步:生成签名Signature
Signature 算法官方只是文字描述,并未给出API可以调用,需要自己实现,这里可以通过在https://debug.dingtalk.com/来填入相关数据,来生成:
第四步:编写测试代码
第五步:登录PC客户端,单击【工作】在其下可以看到微应用Resume,单击它,即可弹出提示框:
至此,一个PC客户端的应用测试就完成了。希望对大家有帮助。