前段時間,用釘釘進行了服務器端的開發,對照着官方文檔,感覺還是比較順利的。后續想有時間研究一下PC端客戶端的開發,看着官方文檔,說的確實是比較簡練,但也確實沒看太明白,廢了半天勁也沒成功。后來經過無數次嘗試,發現期待的彈窗竟然出現了,為了讓其他人少走彎路,下面將自己的心得記錄如下:
釘釘PC客戶端開發注意事項:
1、必須有公網IP或者合法的域名(可憐沒有,只能用github子域名作為域名了);
2、必須在釘釘的瀏覽器中才能(即釘釘客戶端、或者釘釘手機端)
3、如果是HTTPS協議,那么不能引用外域的JS文件,需要將JS文件放到HTML頁面中;
4、簽名等配置信息必須正確且未過期(簽名生成可以參照https://debug.dingtalk.com/)
第一步:建立一個微應用,配置如下:
第二步:獲取時間戳timestamp
timestamp是當前時間戳,具體值為當前時間到1970年1月1號的秒數。可以用C#代碼來獲取:
1 /// <summary>
2 /// 獲取時間戳timestamp(當前時間戳,具體值為當前時間到1970年1月1號的秒數) 3 /// </summary>
4 /// <returns></returns>
5 public static string GetTimeStamp() 6 { 7 TimeSpan ts = DateTime.UtcNow - new DateTime(1970, 1, 1, 0, 0, 0, 0); 8 return Convert.ToInt64(ts.TotalSeconds).ToString(); 9 }
這里獲取的值為:1461565921。
第三步:生成簽名Signature
Signature 算法官方只是文字描述,並未給出API可以調用,需要自己實現,這里可以通過在https://debug.dingtalk.com/來填入相關數據,來生成:
第四步:編寫測試代碼
第五步:登錄PC客戶端,單擊【工作】在其下可以看到微應用Resume,單擊它,即可彈出提示框:
至此,一個PC客戶端的應用測試就完成了。希望對大家有幫助。