最近在跟菜鸟天地系统对接,业务中涉及到单点接入,感觉其实现思想很不错,现分享一下,供大家参考:
从CP内部系统进入菜鸟天地,也就是从菜鸟的合作伙伴(物流或快递公司内部系统)单点跳转进入菜鸟天地系统
红色的请求需要CP实现(合作方):
1、LINK接口( ):服务器端获取快速登录菜鸟的令牌(loginToken) CNUSER_GET_LOGIN_TOKEN 请求参数:员工工号 返回参数:loginToken
2、生成快速登录菜鸟的URL,并从浏览器发起302跳转 #*http://login.cainiao.com/cplogin.htm?loginToken=2nAiCDsSZVXBS8kLApj9iA&redirectUrl=http%3a%2f%2ffly.cainiao.com goto:登陆后的目标跳转地址。如菜鸟天地的地址为:http%3a%2f%2ffly.cainiao.com login_token:菜鸟返回的令牌(注意:login_token使用一次后即失效,且LINK接口返回起60秒后超时失效)

功能实现:用户在合作方系统登录后,访问菜鸟天地链接时调用菜鸟接口返回认证token,再构造地址跳转到菜鸟天地系统,token使用一次后失效
从合作方登录菜鸟天地
/// <summary> /// 登录菜鸟天地系统 /// </summary> /// <returns></returns> public ActionResult CaiNiaoTianDi() { string userCode = UserInfo.Code; try { JsonResult<string> result = CaiNiaoAPIUtilities.GetCaiNiaoLoginToken(userCode); if (result.Status) { string token = result.ResultValue; string url = string.Format("http://login.cainiao.com/cplogin.htm?loginToken={0}&redirectUrl=https://fly.cainiao.com", token); return Redirect(url); } else { return Content("登录菜鸟系统出错" + result.Data); } } catch (Exception ex) { NLogHelper.Warn(ex, "登录菜鸟系统异常"); return Content("登录菜鸟系统异常"); } }
讯享网

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/19549.html