开发者社区> 问答> 正文

非跳转的免登到底怎么做啊?

前台代码:

            dd.ready(function() {
                dd.runtime.permission.requestAuthCode({
                    corpId: "<%=RtHashtable()["corpId"]%>",
                    onSuccess: function (info) {
                       info.code;//这里获得了授权码,那我怎么传到当前页面的后台呢?从而继续获取用户信息。我希望是在同一个页面完成免登和获取用户信息。难道非要把这个授权码传递到另一个页面才能继续?(小弟用的ASP.net)
                    },
                    onFail: function (err) {
                        JSON.stringify(err);
                    }
                });


            });

展开
收起
maysoft 2016-03-03 23:35:50 5355 0
6 条回答
写回答
取消 提交回答
  • Re非跳转的免登到底怎么做啊?
    兄弟解决了吗?能否分享一下经验
    2016-03-19 16:00:47
    赞同 展开评论 打赏
  • Re非跳转的免登到底怎么做啊?
    取到code后。。。ajax到另一个ashx并返回user信息
    2016-03-08 15:37:45
    赞同 展开评论 打赏
  • Re非跳转的免登到底怎么做啊?
    楼主可实现用.net进行不跳转的免登吗?如何实现的?可否指点一二,小弟弄几天了也没弄出来?汗
    2016-03-08 09:15:13
    赞同 展开评论 打赏
  • Re非跳转的免登到底怎么做啊?
    ThinkPHP+EasyUI环境支持多语言的页面初始化流程
    DingTalkPC.config({
            agentId: '{$agentId}',
            corpId: '{$corpId}',
            timeStamp: '{$timeStamp}',
            nonceStr: '{$nonceStr}',
            signature: '{$signature}',
            jsApiList: ['runtime.permission.requestAuthCode', 'device.notification.alert', 'device.notification.confirm', 'biz.util.openModal', 'biz.contact.choose']
    });
    DingTalkPC.ready(function(res) {
            $.messager.progress('close');
            $.messager.progress({
                    title: L('WAIT'),
                    text: L('CHECK_USER_IDENTITY')
            });
            /* 初始化完成后获取用户CODE */
            DingTalkPC.runtime.permission.requestAuthCode({
                    corpId: '{$corpId}',
                    onSuccess: function(result) {
                            /* 拿到CODE后去后台获取成员详情 */
                            $.post('/index.php/Api/Dingtalk/getUserInfo.html', {
                                    code: result.code
                            }, function(data) {
                                    $.messager.progress('close');
                                    /* 获取成员详情成功并且验证当前权限成功后加载Status模块 */
                                    if (data.success == 1) {
                                            $('#content').show();
                                            loadModule('Status');
                                            /* 5秒一次检查Session是否过期 */
                                            checkToken();
                                    } else {
                                            $('#error').show().find('.msg-con').html(L('CHECK_USER_IDENTITY_FAIL', data.message));
                                    }
                            }).error(function() {
                                    $.messager.progress('close');
                                    $('#error').show().find('.msg-con').html(L('CONNECT_FAIL'));
                            });
                    },
                    onFail: function(err) {
                            $.messager.progress('close');
                            $('#error').show().find('.msg-con').html(L('GET_USER_IDENTITY_FAIL', err.code + ' ' + err.message));
                    }
            });
    });
    DingTalkPC.error(function(error) {
            $.messager.progress('close');
            $('#error').show().find('.msg-con').html(L('INIT_DINGTALK_API_FAIL', error.errorCode + ' ' + error.errorMessage));
    });

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

    Re非跳转的免登到底怎么做啊?
    我的代码不是已经把流程表示清楚了么,后台的代码自己搞定啊。想要什么功能都在拿到code以后post的那个url里做就好了啊。


    必须要做的:
    拿code换取用户身份
    判定用户权限
    写入用户session/cookie
    返回成功或失败信息


    可以做的
    不想每次都登录就判断下seesion/cookie,没登录的再登录,登录的直接返回。
    更新本地用户数
    2016-03-05 11:52:14
    赞同 展开评论 打赏
  • 回 1楼靖山的帖子
    那我可不可以在回调里使用ajax方式POST到WebService去处理获取用户信息,然后返回?如果这样,用户多次打开该页面会发生什么?反复登录?

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

    回 4楼浮云若海的帖子
    很有参考意义,虽然我用asp.net,但想法一样了。
    2016-03-05 00:45:48
    赞同 展开评论 打赏
  • 回 楼主(maysoft) 的帖子
    dd.runtime.permission.requestAuthCode不会用webview发起请求,你当前加载的页面不会被冲走,在dd.runtime.permission.requestAuthCode的onSuccess:回调里面处理获取了code的逻辑,具体作法问问你旁边的前端小伙伴

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

    http://ddtalk.github.io/dingTalkDoc/?spm=a3140.7785475.0.0.zrUDQM#java版本 这几个demo里面也有

    2016-03-04 15:27:43
    赞同 展开评论 打赏
滑动查看更多
问答地址:
问答排行榜
最热
最新

相关电子书

更多
QQ移送页面框架优化实践 立即下载
QQ移动页面框架优化实践 立即下载
低代码开发师(初级)实战教程 立即下载

相关实验场景

更多