文档章节

获取微信用户OpenID

沙果
 沙果
发布于 2017/06/02 18:19
字数 258
阅读 47
收藏 0

坚持把遇到的问题整理出来,供大家参考(企鹅群:263130304),转载注明出处(方便大家找我要源码),对你有帮助请点个赞,如果存在不足之处请留意,不喜勿喷,欢迎大家相互交流学习。——沙果

一、获取code:

1、这里可以直接写在js里


location.href = 'https://open.weixin.qq.com/connect/oauth2/authorize?appid=替换APPID&redirect_uri=替换回调地址&response_type=code&scope=snsapi_base&state=STATE%23wechat_redirect&connect_redirect=1#wechat_redirect';

2、在回调地址中获取code

var code = $.getUrlParam("code");

二、获取openid:

// 创建HttpClientBuilder
HttpClientBuilder httpClientBuilder = HttpClientBuilder.create();
// HttpClient
CloseableHttpClient closeableHttpClient = httpClientBuilder.build();
HttpGet httpGet = new HttpGet(urlOpenid + "?appid=" + appid + "&secret=" + secret + "&code=" + code + "&grant_type=authorization_code");
try {
	HttpResponse httpResponse = closeableHttpClient.execute(httpGet);
	HttpEntity httpEntity = httpResponse.getEntity();
	if (httpEntity != null) {
		String result = EntityUtils.toString(httpEntity, "UTF-8");
		// 过滤
		result = result.replaceAll("<![CDATA[|]]>", "");
		String sTotalString = result;
		// 把字符串转换为JSONArray对象
		JSONObject jsonObject = JSONObject.fromObject(sTotalString);
		if (jsonObject.get("openid") != null) {
			return jsonObject.get("openid").toString();
		}
	}
} catch (Exception e) {
	e.printStackTrace();
} finally {
	// 释放资源
	try {
		closeableHttpClient.close();
	} catch (IOException e) {
	}
}

说明:

1、getUrlParam自定义获取参数方法

2、将文中“替换”部分修改以外,其他部分可以不用修改

© 著作权归作者所有

共有 人打赏支持
沙果
粉丝 0
博文 1
码字总数 258
作品 0
深圳
程序员
微信小程序Java登录流程(ssm实现具体功能和加解密隐私信息问题解决方案)

文章有不当之处,欢迎指正,如果喜欢微信阅读,你也可以关注我的微信公众号:,获取优质学习资源。 一、登录流程图 二、小程序客户端 微信小程序端发起登录请求,携带的参数主要有: 参数解释...

公众号_好好学java
07/17
0
0
微信公众号开发之网页中及时获取当前用户Openid及注意事项

目录 (一)微信公众号开发之VS远程调试 (二)微信公众号开发之基础梳理 (三)微信公众号开发之自动消息回复和自定义菜单 (四)微信公众号开发之网页授权获取用户基本信息 (五)微信公众...

micahel
2017/01/12
0
0
使用python导出公众号关注用户

要从公众号导出关注用户,共需要三步: 获取access_token 获取关注用户的Open_id 根据open_id获取用户的信息 获取access_token 公众号文档对access_token的简介: 获取access_token的代码: ...

海鲜新零售
08/21
0
0
微信小程序案例:获取微信访问用户的openid

在微信开发项目中,获取openid是项目常遇的问题,本文通过主要讲解实现在微信小程序中如何获取用户的openid,案例实现非常简单 具体实现方法是通过登录接口获取登录凭证,然后通过request请求...

飞翔的熊blabla
08/19
0
0
微信公众平台开发 OAuth2.0网页授权认证

一、什么是OAuth2.0 官方网站:http://oauth.net/ http://oauth.net/2/ 权威定义:OAuth is An open protocol to allow secure authorization in a simple and standard method from web, m......

大道至精
2014/10/22
0
1

没有更多内容

加载失败,请刷新页面

加载更多

用户体验要素——以用户为设计中心

一、用户体验是什么 产品会与外界发生联系,人们如何去使用产品,人们使用产品无非解决两种问题,一,提高效率;二娱乐。而用户体验兼顾着功能和界面两个方面,为的是“提高人们的工作效率”...

铸剑为犁413
45分钟前
0
0
学习设计模式——代理模式

1. 认识代理模式 1. 定义:为其他对象提供一种代理以控制对这个对象的访问。 2. 组织结构: Proxy:代理对象,要实现与目标代理对象的相同的接口,这样就可以使用代理来代替具体的目标对象,...

江左煤郎
今天
1
0
java JDK动态代理

本篇随笔是对java动态代理中的JDK代理方式的具体实现。 首先需要定义一个接口,为其定义了两个方法:   public interface UserService { public void add(); public void delete(); } 然后需...

编程SHA
今天
2
0
轻松理解Dubbo分布式服务框架

Dubbo是什么? Dubbo是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案。简单的说,dubbo就是个服务框架,如果没有分布式的需求,其实是不需要用的...

别打我会飞
今天
3
0
TypeScript基础入门之JSX(一)

转发 TypeScript基础入门之JSX(一) 介绍 JSX是一种可嵌入的类似XML的语法。 它旨在转换为有效的JavaScript,尽管该转换的语义是特定于实现的。 JSX在React框架中越来越受欢迎,但此后也看到了...

durban
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部