开发者社区> 问答> 正文

回调注册,一直返回文本非success

本地通过调用官方php demo实现加密,注册回调接口时,收到钉钉数据:
"POST /callback?signature=fd4056afc884d860a0d4c13f7aa73a01f5dbd68d&timestamp=1537851086358&nonce=vcwTrpBN HTTP/1.1"
提取其中的timestamp、nonce,加密后向钉钉返回如下值:
{    "msg_signature":"e0a1916d0698459e3135acf661b91117107962e2",    "encrypt":"LkiusoRxrGSTmAsNyMTwZtGl960E9nSAQhvZvbForl1yXP488uB2/ApoDx80bKq3WD7LrBbZ+e/qdsMCIeUHwg==",    "timeStamp":"1537851086358",    "nonce":"vcwTrpBN"}
但是总是显示{"errmsg":"返回文本非success","errcode":71009}。本地已经测试,解密后为success。请教如何解决!


问题已经解决,记录如下,供其它同志参考。
1、消息加解密时,我直接调用的钉钉php demo,有几个关键点
$crypt = new DingtalkCrypt($token, $aes_key, $suiteKey); //token是取的随机值,这个值要记住,我就是卡在这里
$res = $crypt->EncryptMsg($msg, $timeStamp, $nonce, $encryptMsg);
以上 token是取的随机值,这个值要记住; aes_key是43位加密的密码; suiteKey是企业的 corpid; msg是要加密的值(比如success);
2、注册接口时,要传递以下内容:

    data ={
        "call_back_tag": ["bpms_instance_change"],
        "token": "000000",
        "aes_key": "1234567890zxcvbnmlkjhgfdsaqwertyuiop09876XX",
        "url":"http://home.XXX.cn:5001/callback"
    }
以上token要与第一步token一致!aes_key要与第一步一致!然后就可以注册成功,主要是加密接口的token\aes_key要与注册时的值一致。










展开
收起
凯~ 2018-09-25 13:02:42 6051 0
2 条回答
写回答
取消 提交回答
  • 回 1楼返回文本非的帖子
    请问现在解决了么?我也遇到相同问题!解析了源代码,发现是计算签名错误,不知道你怎么解决的呢?
    2019-02-25 17:03:01
    赞同 展开评论 打赏
  • Re回调注册,一直返回文本非success
    请问怎么解决了?我这边也是这个问题,这个问题困扰我很久了
    2018-11-27 16:16:00
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载