求助单点登录获取当前用户上下文 技术支持
本帖最后由 荣谦 于 2017-06-30 22:43 编辑

如题

企业自建应用接入云之家平台,做单点登录获取当前用户上下文
通过appAuth2授权认证接口 /openauth2/api/appAuth2 成功的拿到了access_token

跳转到自建应用后也拿到了ticket参数

然后按照开发文档调用获取用户上下文接口
https://www.yunzhijia.com/openapi/third/v1/ticket/public/tickettocontext

一直报签名错误,

http请求头参数 调用方法使用JAVA示例代码
https://github.com/yunzhijia/oauth-client4j-sample
中的
AuthorizationUtil.generateAuthorizationHeader方法,使用如下:

long
oauth_timestamp = System.currentTimeMillis()/1000;

AuthorizationUtil.generateAuthorizationHeader(
appid, //传入的值为跳转URL上获取的APPID
appSecret, //传入的值为自建应用输入的秘钥
null,
oauth_timestamp,
String.valueOf(oauth_timestamp + AuthorizationUtil.RAND.nextInt()),
1.0f,
oauth_token, //传入的值为appAuth2授权认证接口返回的access_token
oauth_verifier, //传入的值为ticket
null,
url, //传入的值为"https://www.yunzhijia.com/openapi/third/v1/ticket/public/tickettocontext"
param, //null
method//POST
);

返回信息如下:
{"data":null,"success":false,"error":"oauth_problem=signature_invalid","errorCode":4019,"innererror":null}
微信扫一扫
分享
举报
您需要登录后才可以回帖 登录 | 注册

  • 扶九雄 略知一二 沙发
    2017-07-03 显示全部楼层
    您好,按您描述的,应该是没问题,麻烦你在云之家加我为好友,我们一起来看这个问题吧。18620369835
  • 金瑶 初来乍到 板凳
    2017-07-05 显示全部楼层
  • 熊杰 初来乍到 地板
    2017-12-07 显示全部楼层
    请问解决了吗?我也遇到了这个问题!
  • 任然 初来乍到 5
    2017-12-08 显示全部楼层
    用Java获取上下文也是一样,用旧接口可以获取到上下文,新接口一直是error:500
    调试信息:
    OAuth base string: POST&https%3A%2F%2Fwww.yunzhijia.com%2Fopenapi%2Fthird%2Fv1%2Fticket%2Fpublic%2Ftickettocontext&oauth_consumer_key%3D500038252%26oauth_nonce%3D2098251404%26oauth_signature_method%3DHMAC-SHA1%26oauth_timestamp%3D1512699404%26oauth_token%3D069372f20e2c17848931b717474901dc%26oauth_verifier%3DAPPURLWITHTICKET7735726181b304912180283a7ee22a61%26oauth_version%3D1.0
    OAuth signature: auCXF4H+r7t5dhBuhu2MdpYxijI=
    Authorization: OAuth oauth_consumer_key="500038252",oauth_signature_method="HMAC-SHA1",oauth_timestamp="1512699404",oauth_nonce="2098251404",oauth_version="1.0",oauth_token="069372f20e2c17848931b717474901dc",oauth_verifier="APPURLWITHTICKET7735726181b304912180283a7ee22a61",oauth_signature="auCXF4H%2Br7t5dhBuhu2MdpYxijI%3D"
    OAuth oauth_consumer_key="500038252",oauth_signature_method="HMAC-SHA1",oauth_timestamp="1512699404",oauth_nonce="2098251404",oauth_version="1.0",oauth_token="069372f20e2c17848931b717474901dc",oauth_verifier="APPURLWITHTICKET7735726181b304912180283a7ee22a61",oauth_signature="auCXF4H%2Br7t5dhBuhu2MdpYxijI%3D"
    加密用的key是appsecret+&,返回值是{"data":{},"errorCode":500,"success":"false"}
  • 扶九雄 略知一二 6
    2017-12-08 显示全部楼层
    对不起,7月份回复您的有误。单点登录这个接口,oauth_token和oauth_verifier字段不参与生成 签名。
  • 三爷 略有小成 7
    2017-12-14 显示全部楼层
  • 15220037824 初来乍到 8
    2017-12-15 显示全部楼层
    扶九雄 发表于 2017-12-08 10:30
    对不起,7月份回复您的有误。单点登录这个接口,oauth_token和oauth_verifier字段不参与生成 签名。 ...

    请问上面所述的方法是否可行,我也是同样的操作,也是签名错误。