request url=https://oapi.dingtalk.com/user/getuserinfo?access_token=8ae0544efde6342eaf16fbc0727296d0&code=c88c4ed8cf803ad195951af0bfec88f2,return value=
{"errcode":40078,"errmsg":"不存在的临时授权码"}
根据授权获取用户id信息异常com.alibaba.dingtalk.openapi.demo.OApiException: error code: 40078, error message: 不存在的临时授权码
code 确定只有使用一次,一直都是不行。
js 代码
dd.runtime.permission.requestAuthCode({
onSuccess: function(result) {
var code = result.code;
alert(code);
$.ffcsAjax({
url: web_path+'wap/getUser.do',
data: {"code":code},
success:function(data){
if(data){
dd.device.notification.actionSheet({
title: "当前用户信息",
cancelButton: '关闭',
otherButtons: [
'userid: ' + data.userid,
'deviceId: ' + data.deviceId,
'is_sys: ' + data.is_sys,
'sys_level: ' + data.sys_level
],
onSuccess : function(result) {
// 取消这里取的是 -1
//alert(result.buttonIndex);
},
onFail : function(err) {alert(err);}
});
}
}
});
},
onFail : function(err) {alert(err);}
});
后台方法:
public @ResponseBody JSONObject getUser( String code,Model model){
JSONObject response =null;
try {
String accessToken =Vars.accessToken;
Ddutil dd = new Ddutil();
return dd.getUserId(code,accessToken);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return response;
}
public JSONObject getUserId(String code,String accessToken ){
JSONObject response =null;
try{
String url = Env.OAPI_HOST + "/user/getuserinfo?" + "access_token=" + accessToken + "&code=" + code;
response = HttpHelper.httpGet(url);
log("根据授权获取用户id信息", "成员信息=", response.toJSONString());
return response;
}catch(Exception ex){
log("根据授权获取用户id信息异常"+ex);
}
return response;
}
-------------------------
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。