天天看點

阿裡雲釘釘ServerLess實戰第三課

如何成功管理者或者子管理者呢?

這裡引用釘釘客服給出的方法連結

https://h5.alimebot.com/app/ikc-fe/kc_detail/p/detail/index.html?app_id=51947349&knowledge_id=1011509618&corpId=ding94b38676d04cb55ff2c783f7214b6d69&type=dingding_channel&pc_slide=true https://h5.alimebot.com/app/ikc-fe/kc_detail/p/detail/index.html?app_id=51947349&knowledge_id=1011509618&corpId=ding94b38676d04cb55ff2c783f7214b6d69&type=dingding_channel&pc_slide=true

總結一下:第一步是實名,第二步是配置設定權限

如果沒有組織的可以自己建立一個組織(釘釘手機端,通信錄→建立/加入組織→建立)

開發流程

https://developers.dingtalk.com/ https://developers.dingtalk.com/

JSAPI鑒權

https://developers.dingtalk.com/document/app/jsapi-authentication?spm=ding_open_doc.document.0.0.457b511f1TbQ3G#topic-2025314 https://developers.dingtalk.com/document/app/jsapi-authentication?spm=ding_open_doc.document.0.0.457b511f1TbQ3G#topic-2025314

服務端如何調用

https://developers.dingtalk.com/document/app/how-to-call-apis https://developers.dingtalk.com/document/app/how-to-call-apis

注意:事件有逾時控制 要保持在1000毫秒以内。

http回調

https://developers.dingtalk.com/document/app/callback-overview https://developers.dingtalk.com/document/app/callback-overview

服務端調試工具

https://open-dev.dingtalk.com/apiExplorer?spm=ding_open_doc.document.0.0.457b511f1TbQ3G#/ https://open-dev.dingtalk.com/apiExplorer?spm=ding_open_doc.document.0.0.457b511f1TbQ3G#/

前段調試工具

https://developers.dingtalk.com/document/resourcedownload/jsapi-explorer?pnamespace=app https://developers.dingtalk.com/document/resourcedownload/jsapi-explorer?pnamespace=app

問題答疑方法

阿裡雲釘釘ServerLess實戰第三課

這面補充點内容 提供一個複雜的方法來答第三題

思路

通過搭建本地平台來調用建立使用者方法。(預設已經建立好組織并且進行了開發配置,項目clone需要連結java基本知識和git的簡單使用哈)

搭建本地服務端

通過官方提供的連結進行配置 這裡就不贅述了連結奉上 https://developers.dingtalk.com/document/tutorial/develop-mini-programs https://developers.dingtalk.com/document/tutorial/develop-mini-programs

這裡面提幾點需要注意的事項:

  • 安裝完之後需要執行mvn install 下載下傳依賴
  • 項目使用的是8080端口注意别被占用了
  • 根部門的id為1 并且格式為[1]. (我掉進坑裡好一會兒)
  • 由于提供的隻有登陸接口調用,是以需要添加建立使用者接口(MainContrller)
@RequestMapping(value = "/create", method = RequestMethod.POST)
    public RpcServiceResult create(@RequestParam(value = "authCode") String authCode) {
        try {
            DingTalkClient client = new DefaultDingTalkClient("<https://oapi.dingtalk.com/user/create>");
            OapiUserCreateRequest req = new OapiUserCreateRequest();
            String accessToken = AccessTokenUtil.getAccessToken();
            req.setIsSenior(Boolean.TRUE);
            req.setIsHide(Boolean.TRUE);
            req.setDepartment("[1]");
            req.setMobile("176403xxxxx");
            req.setName("Iwa實戰營第三課");
            OapiUserCreateResponse rsp = client.execute(req, accessToken);
            System.out.println(rsp.getBody());
            return RpcServiceResult.getSuccessResult(resultMap);
        } catch (Exception ex) {
            return RpcServiceResult.getFailureResult("-1", "create exception");
        }
    }      

搭建本地内網穿透(類似花生殼,用二級域名做映射)

我這裡使用的是mac環境,老規矩連結奉上, https://developers.dingtalk.com/document/tutorial/develop-mini-programs 。 官方講解我輔助

說下幾個注意事項

./ding -config=./ding.cfg -subdomain=abcde 8080      
  • 執行這個指令的時候會出現如域名已經被使用了,那就把穩重的subdomain資訊換成自己自定義一個如iwa等 再試一下
  • 8080 對應的就是你本地服務的端口,如有更換這塊也需要進行修改

釘釘小程式端

複制上連結友善尋找 https://developers.dingtalk.com/document/tutorial/develop-mini-programs

說下注意事項,本人的mac用的是英文版的,是以遇到的坑很多。。

  • 左上角一定要選擇對自己的組織和企業,非常重要。選擇有需要授權
  • 更改後一定要在自己更改的檔案上按儲存。。别為我是怎樣知道的(用idea習慣了,這個和微信,vscode一樣邏輯 不太習慣)
  • 将預設的login更高為create

補充一下在釘釘開發配置上一定要填寫自己公網ip或者域名哈。

安全中心和出口ip都需要配置哈