微信开发总结1——关于微信企业号API,Auth验证
2015-02-09 09:50
344 查看
最近在开发微信的一些功能,如企业号的开发,做一些OA的功能,内容包括公文传阅、流程审批等功能。
1.到https://qy.weixin.qq.com注册一个企业号。成功后会分配一个CorpID和一个Secret。记录下这两个数据。说明CorpID是企业号ID,Secret是管理组凭证,这两个是微信的管理组凭据。如图:
2.通过API传递参数在微信服务器端获取验证。
例:string
redirectUrl = WeixinUrls.Instance().OAuthAuthorize(corpId, encodeurl, state);
说明:corpId(企业号ID)、encodeUrl为成功后返回的URL,这里的encodeurl必须是进行HttpUtility.UrlEncode()处理后的URL、state你可以认为是传递的参数。我们在程序里是这样处理的:string state = string.Format("{0}_{1}",
corpId, appid);
如果验证成功回返(记得encodeurl吗?对就是这个http路径)的参数中会有两个参数string code, string state
3.通过以上两个参数获取accessToken,这个时间就需要引用weChat.API文件。
例:var
accessToken = TokenManager.Instance().GetAccessTotken(CorpID,
Secret, out errMessage);
说明:errMessage是获取accessToken提示的错误信息,如果为空则获取成功。
4.通过accessToken和code,agentId获取用户信息。
例:var
result = WeixinHelper.Instance().OAuthGetUserInfo(accessToken, code, agentId);
说明:通过员工授权获取到的code,每次员工授权带上的code将不一样,code只能使用一次,5分钟未被使用自动过期。agentId为企业号应用ID(此应用号ID对应企业号,一般一个企业号能对就3个应用号)。
result包括用户Id:UserId,用户图片:avatar,用户部门:department
5.通过当前用户信息,获取用户的相关信息。
var
getUserResponse = WeixinHelper.Instance().GetUser(accessToken, result.UserId);
说明:getUserResponse为用户的泛型集合。有Email、weixinid、mobile、gender、name等相关微信注册信息。
好了写到这里基本的过程都已经完成了,这里要说明的是我们这里只是基于微信的API去获取微信企业号中的用户的基本信息。所以不涉及一些向用户发送消息以及消息显示的相关的问题。但如果你有兴趣可以自己研究下,如果有任何相关的问题可以联系我:QQ:305931534,附件中有相关的代码
![](http://img.blog.csdn.net/20150209111833511?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveG5fMTE=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
(我们的项目是一个MVC项目)
1.到https://qy.weixin.qq.com注册一个企业号。成功后会分配一个CorpID和一个Secret。记录下这两个数据。说明CorpID是企业号ID,Secret是管理组凭证,这两个是微信的管理组凭据。如图:
2.通过API传递参数在微信服务器端获取验证。
例:string
redirectUrl = WeixinUrls.Instance().OAuthAuthorize(corpId, encodeurl, state);
说明:corpId(企业号ID)、encodeUrl为成功后返回的URL,这里的encodeurl必须是进行HttpUtility.UrlEncode()处理后的URL、state你可以认为是传递的参数。我们在程序里是这样处理的:string state = string.Format("{0}_{1}",
corpId, appid);
如果验证成功回返(记得encodeurl吗?对就是这个http路径)的参数中会有两个参数string code, string state
3.通过以上两个参数获取accessToken,这个时间就需要引用weChat.API文件。
例:var
accessToken = TokenManager.Instance().GetAccessTotken(CorpID,
Secret, out errMessage);
说明:errMessage是获取accessToken提示的错误信息,如果为空则获取成功。
4.通过accessToken和code,agentId获取用户信息。
例:var
result = WeixinHelper.Instance().OAuthGetUserInfo(accessToken, code, agentId);
说明:通过员工授权获取到的code,每次员工授权带上的code将不一样,code只能使用一次,5分钟未被使用自动过期。agentId为企业号应用ID(此应用号ID对应企业号,一般一个企业号能对就3个应用号)。
result包括用户Id:UserId,用户图片:avatar,用户部门:department
5.通过当前用户信息,获取用户的相关信息。
var
getUserResponse = WeixinHelper.Instance().GetUser(accessToken, result.UserId);
说明:getUserResponse为用户的泛型集合。有Email、weixinid、mobile、gender、name等相关微信注册信息。
好了写到这里基本的过程都已经完成了,这里要说明的是我们这里只是基于微信的API去获取微信企业号中的用户的基本信息。所以不涉及一些向用户发送消息以及消息显示的相关的问题。但如果你有兴趣可以自己研究下,如果有任何相关的问题可以联系我:QQ:305931534,附件中有相关的代码
(我们的项目是一个MVC项目)
相关文章推荐
- 关于ThinkPHP框架开发微信公众号在微信后台配置服务器URL提示Token验证失败的解决方案
- JAVA版 微信企业号开发 个人总结(微信网页授权例子,微信企业号精准定位,误差5-10米)
- PHP微信公众平台开发:配置、微信api接入验证
- 关于微信开发的一些总结(JAVA开发)
- 关于php微信订阅号开发之token验证后自动发送消息给订阅号但是没有消息返回的问题
- 关于php微信订阅号开发之token验证后自动发送消息给订阅号但是没有消息返回的问题
- 微信企业号开发八:JSAPI模式之身份验证接口
- 关于移动端页面开发(微信内置浏览器)总结
- PHP微信公众平台开发:配置、微信api接入验证
- 关于微信开发模式创建菜单失败 errcode:48001 errmsg:api unauthorized hint: [9U7bga0176vr44!]的解释
- 微信公众账号能做什么怎么用,有哪些API供开发总结
- 关于微信网页授权开发总结整理
- 关于Boot Loader的启动流程和开发经验总结
- Excel开发总结:关于C#导入导出excel的那些琐事
- [转]关于支付宝API开发的一点心得
- 关于struts2,mysql,hibernate的开发环境下的中文显示为“问号”的问题总结
- 国内推出首个带安全性验证的短址应用,对开发人员开放API
- 关于myeclipse+freemarker框架开发中的一些总结
- 开发经验总结,关于需求以及面向对象的经验.
- 关于《ASP.NET办公自动化系统开发实例导航》问题的一些总结