前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >JAVA接入京东授权API

JAVA接入京东授权API

作者头像
凯哥Java
发布2019-06-28 17:38:09
2.9K0
发布2019-06-28 17:38:09
举报
文章被收录于专栏:凯哥Java凯哥Java

如果您的应用已和京东JOS对接,需要获取一些与用户紧密相关的信息(如订单、商品、促销等),为保证数据的安全性和隐私性,需要取得用户的同意,引导用户授权。JOS采用国际通用的OAuth2.0标准协议,支持网站、桌面客户端、ERP系统。如果要了解更多关于OAuth2.0的技术说明,请参考官方网站  http://oauth.net/2/  。目前,JOS的OAuth2.0支持以下方式获取Access Token。

官方说明文档:http://jos.jd.com/doc/channel.htm?id=152

1.访问 https://auth.360buy.com/oauth/authorize?response_type=code&client_id=京东APPID&redirect_uri=后台设置的回调地址

2.根据授权后回调用code换取access_token

使用第三方fastJson.jar,京东JAVA开放sdk.jar

代码语言:javascript
复制
public static void main(String[] args) {
	// 获取access_token
	new AccessTokenUtils().get_access_token("gmgUSe");
}

/**
 * 1.获取京东授权登陆后的值
 * @param access_code 授权登陆后的code
 */
public void get_access_token(String access_code) {
	StringBuffer sb = new StringBuffer();
	sb.append("http://auth.360buy.com/oauth/token?");
	sb.append("grant_type=authorization_code");
	sb.append("&client_id=" + APIIConst.APP_KEY);
	sb.append("&client_secret=" + APIIConst.APP_SECRET);
	sb.append("&scope=read");
	sb.append("&redirect_uri=" + APIIConst.REQ_BACK_URL);
	sb.append("&code=" + access_code);
	// sb.append("&state=1234");
	String json_text = HttpRequestTools.sendGetReq(sb.toString(), "GET", 102400, "GBK");
	//System.out.println(json_text);
	JSONObject obj = (JSONObject) JSON.parse(json_text);
	
	// code
	String code = obj.getString("code");
	
	if("0".equals(code)) {
		// 授权码
		String access_token = obj.getString("access_token");
		// 失效时间(秒)
		String expires_in = obj.getString("expires_in");
		String refresh_token = obj.getString("refresh_token");
		String scope = obj.getString("scope");
		// 授权的时间点(UNIX时间戳,单位:毫秒)
		String time = obj.getString("time");
		// token类型(暂无意义)
		String token_type = obj.getString("token_type");
		// 授权用户对应的京东ID
		String uid = obj.getString("uid");
		// 授权用户对应的京东昵称
		String user_nick = obj.getString("user_nick");
		
		logger.info(obj.getString("user_nick") + "授权成功.");
	} else {
		// 授权错误
		logger.info("京东授权错误:" + json_text);
	}
}

http://www.xiaojianjian.net/archives/257

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-02-12 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
访问管理
访问管理(Cloud Access Management,CAM)可以帮助您安全、便捷地管理对腾讯云服务和资源的访问。您可以使用CAM创建子用户、用户组和角色,并通过策略控制其访问范围。CAM支持用户和角色SSO能力,您可以根据具体管理场景针对性设置企业内用户和腾讯云的互通能力。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档