@tnwx/wxmp
Version:
TNWX 微信系开发脚手架之极速开发微信公众号
69 lines • 3.17 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 });
const util = require("util");
const accesstoken_1 = require("@tnwx/accesstoken");
const kits_1 = require("@tnwx/kits");
/**
* @author Javen
* @copyright javendev@126.com
* @description 微信服务器
*/
class CallbackApi {
/**
* 获取微信服务器IP地址
* @param accessToken
*/
static getCallbackIp(accessToken) {
return __awaiter(this, void 0, void 0, function* () {
if (!accessToken) {
accessToken = yield accesstoken_1.AccessTokenApi.getAccessToken();
}
let url = util.format(this.apiUrl, accessToken.getAccessToken);
return kits_1.HttpKit.getHttpDelegate.httpGet(url);
});
}
/**
* 网络检测
* @param action 执行的检测动作,允许的值:dns(做域名解析)、ping(做ping检测)、all(dns和ping都做)
* @param operator 指定平台从某个运营商进行检测,允许的值:CHINANET(电信出口)、UNICOM(联通出口)、CAP(腾讯自建出口)、DEFAULT(根据ip来选择运营商)
* @param accessToken
*/
static check(action = CheckAction.ALL, operator = CheckOperator.DEFAULT, accessToken) {
return __awaiter(this, void 0, void 0, function* () {
if (!accessToken) {
accessToken = yield accesstoken_1.AccessTokenApi.getAccessToken();
}
let url = util.format(this.checkUrl, accessToken.getAccessToken);
return kits_1.HttpKit.getHttpDelegate.httpPost(url, JSON.stringify({
action: action,
check_operator: operator
}));
});
}
}
exports.CallbackApi = CallbackApi;
CallbackApi.apiUrl = 'https://api.weixin.qq.com/cgi-bin/getcallbackip?access_token=%s';
CallbackApi.checkUrl = 'https://api.weixin.qq.com/cgi-bin/callback/check?access_token=%s';
var CheckAction;
(function (CheckAction) {
CheckAction["DNS"] = "dns";
CheckAction["PING"] = "ping";
CheckAction["ALL"] = "all";
})(CheckAction = exports.CheckAction || (exports.CheckAction = {}));
var CheckOperator;
(function (CheckOperator) {
CheckOperator["CHINANET"] = "CHINANET";
CheckOperator["UNICOM"] = "UNICOM";
CheckOperator["CAP"] = "CAP";
CheckOperator["DEFAULT"] = "DEFAULT";
})(CheckOperator = exports.CheckOperator || (exports.CheckOperator = {}));
//# sourceMappingURL=CallbackApi.js.map