开发者社区> 问答> 正文

JS-API权限签名算法


开发者在web页面使用钉钉容器提供的jsapi时,需要验证调用权限,并以参数signature标识合法性
签名生成的规则:
List keyArray = sort(noncestr,timestamp,jsapi_ticket,url);
String str = assemble(keyArray);
signature = sha1(str); 参与签名的字段包括在上文中获取的jsapi_ticket,noncestr(随机字符串),timestamp(时间戳),url(当前网页的URL,不包含#及其后面部分)

上面是官方的文档
就想问" noncestr,timestamp,url "这三样是怎么来的,还有这生成 signature 的代码到底是要在js写,还是在程序后台写。
上面这个生成签名是用java写的吗,.net要如何生成签名呢。

展开
收起
李¥风 2015-08-12 14:10:37 9593 0
4 条回答
写回答
取消 提交回答
  • 好的,感谢
    2016-09-05 13:56:55
    赞同 展开评论 打赏
  • 回 楼主李¥风的帖子
    怀疑你java的demo代码都不对,
    List keyArray = sort(noncestr,timestamp,jsapi_ticket,url);
    String str = assemble(keyArray);
    这个东西在那里体现
    2016-09-04 16:03:00
    赞同 展开评论 打赏
  • ReJS-API权限签名算法
    随机字符串有什么格式要求吗
    2016-01-20 14:54:49
    赞同 展开评论 打赏
  • noncestr是你自己写的一个随机字符串;

    timestamp是当前时间的时间戳,具体为现在到1970-1-1的时间间隔,单位是秒

    url是用户当前访问的Url

    生成 signature 的代码是在后台写的

    目前暂时没有c#的代码,具体怎么生成签名可以查看java 的demo,应该是比较相近的。
    demo地址:https://github.com/injekt/openapi-demo-java/blob/master/src/com/alibaba/dingtalk/openapi/demo/auth/AuthHelper.java

    -------------------------

    回 2楼(shenb1225) 的帖子
    没有的
    2015-08-24 10:22:20
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
JavaScript面向对象的程序设计 立即下载
Delivering Javascript to World 立即下载
编程语言如何演化-以JS的private为例 立即下载