上一篇:Nodejs微信公众号开发——六、自定义菜单,实现了简单自定义菜单的功能,里面的每个菜单类型都是click,的当然它支持的类型更多,比如view、scancode_waitmsg、scancode_push、pic_sysphoto、location_select等,根据实际需要配置。本节主要介绍用户管理的内容(项目github位置:https://github.com/Panfen/wem...)1.用户管理介绍公众号用户可能来自四面八方,有着不同的职业和兴趣并且其他品类,通过对用户的有效管理,实现精准服务、精准营销。用户管理内容包括:用户组管理,设置用户备注名,获取用户基本信息(UnionID机制??),获取用户列表,获取用户地理位置,网页授权,获取用户基本信息2.用户分组使用该接口查询、创建、修改、删除等操作,需要时还可以通过界面将用户移动到某个组。接口提供的功能包括:创建组查询所有组查询用户所属组修改组名移动用户组批量移动用户组删除组2.1在api中定义urlvarapi={...groups:{create:prefix+'groups/create?',//access_token=ACCESS_TOKEN创建组,POST请求get:prefix+'groups/get?',//access_token=ACCESS_TOKE查询所有组,GET请求getId:prefix+'groups/getid?',//access_token=ACCESS_TOKEN查询用户在群里,POST请求update:prefix+'groups/update?',//access_token=ACCESS_TOKEN修改群名,POST请求membersUpdate:prefix+'groups/members/update?',//access_token=ACCESS_TOKEN移动用户群,POSTrequestmembersBatchupdate:prefix+'groups/members/batchupdate?',//access_token=ACCESS_TOKEN批量移动用户组,POST请求delete:prefix+'groups/delete?'//access_token=ACCESS_TOKEN删除群组,POST请求}}2.2创建群组:createGroupwrite到这里,你应该已经很熟悉这个API的代码实现了,在微信原型中添加方法:Wechat.prototype.createGroup=function(name){varthat=this;returnnewPromise(function(resolve,reject){that.fetchAccessToken().then(function(data){varurl=api.groups.create+'access_token='+data.access_token;varopts={group:{name:name}};request({method:'POST',url:url,body:opts,json:true}).then(函数(response){var_data=response.body;if(_data.group){resolve(_data.group);}else{thrownewError('创建组失败:'+_data.errmsg);}}).catch(function(err){reject(err);});});});}2.3获取所有分组:getGroups同样是简单的添加原型方法:Wechat.prototype.getGroups=function(name){varthat=this;returnnewPromise(function(resolve,reject){that.fetchAccessToken().then(function(data){varurl=api.groups.get+'access_token='+data.access_token;请求({url:url,json:true}).then(函数(响应){...});});});}注意:"是"的十进制表示,因为是测试,我就不改组了有时候我们想一次删除多个群组,我们可以封装支持批量删除的操作:Wechat.prototype.deleteGroups=function(idArr){varthat=this;that.fetchAccessToken().then(function(data){varqueue=[];for(vari=0;i
