服务端采用nodejs-server-todo开发钉钉微应用时,出现dd.ready,dd.config不执行的情况。
分析:(服务端获取到的ticket有问题,当获取缓存的ticket时返回的ticket其实是数组,图1,需要返回ticket.ticket,图2)
解决办法:
修改nodejs-server-todo/app/request/getJsApiTicket.js
if (ticket){
if((ticket.timestamp - currentTime) > (200*100)){
return {
**ticket: ticket.ticket,** //原代码是ticket:ticket
errcode: 0
}
} else {
logger.log('warn', 'ticket cache overdue');
return sendTicketRequest();
}
}