@tnwx/wxmp
Version:
TNWX 微信系开发脚手架之极速开发微信公众号
155 lines • 6.1 kB
JavaScript
;
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", { value: true });
/**
* @author Javen
* @copyright javendev@126.com
* @description 模板消息
*/
const util = require("util");
const accesstoken_1 = require("@tnwx/accesstoken");
const kits_1 = require("@tnwx/kits");
class UserApi {
/**
* 设置用户备注名
* @param openId
* @param remark
*/
static updateRemark(openId, remark) {
return __awaiter(this, void 0, void 0, function* () {
let accessToken = yield accesstoken_1.AccessTokenApi.getAccessToken();
let url = util.format(this.updateRemarkUrl, accessToken.getAccessToken);
return kits_1.HttpKit.getHttpDelegate.httpPost(url, JSON.stringify({
openid: openId,
remark: remark
}));
});
}
/**
* 获取用户列表
* @param openId
* @param remark
*/
static getFollowers(nextOpenid) {
return __awaiter(this, void 0, void 0, function* () {
let accessToken = yield accesstoken_1.AccessTokenApi.getAccessToken();
let url = util.format(this.getUserUrl, accessToken.getAccessToken);
if (nextOpenid) {
url += '&next_openid=' + nextOpenid;
}
return kits_1.HttpKit.getHttpDelegate.httpGet(url);
});
}
/**
* 获取用户基本信息(包括UnionID机制)
* @param openId
* @param lang
*/
static getUserInfo(openId, lang) {
return __awaiter(this, void 0, void 0, function* () {
let accessToken = yield accesstoken_1.AccessTokenApi.getAccessToken();
let url = util.format(this.getUserInfoUrl, accessToken.getAccessToken, openId);
if (lang) {
url += '&lang=' + lang;
}
return kits_1.HttpKit.getHttpDelegate.httpGet(url);
});
}
/**
* 批量获取用户基本信息
* @param userList
*/
static batchGetUserInfo(userList) {
return __awaiter(this, void 0, void 0, function* () {
return this.batchUserInfo(JSON.stringify({
user_list: userList
}));
});
}
/**
* 批量获取用户基本信息
* @param json
*/
static batchUserInfo(json) {
return __awaiter(this, void 0, void 0, function* () {
let accessToken = yield accesstoken_1.AccessTokenApi.getAccessToken();
let url = util.format(this.batchGetUrl, accessToken.getAccessToken);
return kits_1.HttpKit.getHttpDelegate.httpPost(url, json);
});
}
/**
* 获取公众号的黑名单列表
* @param beginOpenId 为空时默认从开头拉取
*/
static getBlackList(beginOpenId) {
return __awaiter(this, void 0, void 0, function* () {
let accessToken = yield accesstoken_1.AccessTokenApi.getAccessToken();
let url = util.format(this.getBlackListUrl, accessToken.getAccessToken);
return kits_1.HttpKit.getHttpDelegate.httpPost(url, JSON.stringify({
begin_openid: beginOpenId || ''
}));
});
}
/**
* 拉黑用户
* @param openidList 需要拉入黑名单的用户的openid,一次拉黑最多允许20个
*/
static batchBlackList(openidList) {
return __awaiter(this, void 0, void 0, function* () {
let accessToken = yield accesstoken_1.AccessTokenApi.getAccessToken();
let url = util.format(this.batchBlackListUrl, accessToken.getAccessToken);
return kits_1.HttpKit.getHttpDelegate.httpPost(url, JSON.stringify({
openid_list: openidList
}));
});
}
/**
* 取消拉黑用户
* @param openidList
*/
static batchUnBlackList(openidList) {
return __awaiter(this, void 0, void 0, function* () {
let accessToken = yield accesstoken_1.AccessTokenApi.getAccessToken();
let url = util.format(this.batchUnBlackListUrl, accessToken.getAccessToken);
return kits_1.HttpKit.getHttpDelegate.httpPost(url, JSON.stringify({
openid_list: openidList
}));
});
}
}
exports.UserApi = UserApi;
UserApi.updateRemarkUrl = 'https://api.weixin.qq.com/cgi-bin/user/info/updateremark?access_token=%s';
UserApi.getUserUrl = 'https://api.weixin.qq.com/cgi-bin/user/get?access_token=%s';
UserApi.getUserInfoUrl = 'https://api.weixin.qq.com/cgi-bin/user/info?access_token=%s&openid=%s';
UserApi.batchGetUrl = 'https://api.weixin.qq.com/cgi-bin/user/info/batchget?access_token=%s';
UserApi.getBlackListUrl = 'https://api.weixin.qq.com/cgi-bin/tags/members/getblacklist?access_token=%s';
UserApi.batchBlackListUrl = 'https://api.weixin.qq.com/cgi-bin/tags/members/batchblacklist?access_token=%s';
UserApi.batchUnBlackListUrl = 'https://api.weixin.qq.com/cgi-bin/tags/members/batchunblacklist?access_token=%s';
class BatchUserInfo {
constructor(openid, lang) {
this.openid = openid;
this.lang = lang;
}
get getOpenId() {
return this.openid;
}
set setOpenId(openid) {
this.openid = openid;
}
get getLang() {
return this.lang;
}
set setLang(lang) {
this.lang = lang;
}
}
exports.BatchUserInfo = BatchUserInfo;
//# sourceMappingURL=UserApi.js.map