cgserver 6.0.6 → 6.0.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/lib/AI/AiObject.js +10 -0
- package/dist/lib/AI/Astar.js +133 -0
- package/dist/lib/AI/BehaviorAI.js +307 -0
- package/dist/lib/AI/Entity.js +33 -0
- package/dist/lib/AI/Point.js +68 -0
- package/dist/lib/AI/TriggerMgr.js +201 -0
- package/dist/lib/Config/Config.js +37 -0
- package/dist/lib/Config/FrameworkConfig.js +234 -0
- package/dist/lib/Config/ServerConfig.js +18 -0
- package/dist/lib/Config/_error_.js +35 -0
- package/dist/lib/Core/Core.js +561 -0
- package/dist/lib/Core/Timer.js +116 -0
- package/dist/lib/Database/BaseMongoService.js +79 -0
- package/dist/lib/Database/BaseService.js +281 -0
- package/dist/lib/Database/Decorator/AutoIncrement.js +11 -0
- package/dist/lib/Database/Decorator/DBCache.js +64 -0
- package/dist/lib/Database/Decorator/NotNull.js +11 -0
- package/dist/lib/Database/Decorator/PrimaryKey.js +11 -0
- package/dist/lib/Database/Decorator/Property.js +61 -0
- package/dist/lib/Database/Decorator/Table.js +15 -0
- package/dist/lib/Database/Decorator/Type.js +20 -0
- package/dist/lib/Database/MSSqlManager.js +43 -0
- package/dist/lib/Database/MongoManager.js +401 -0
- package/dist/lib/Database/MysqlManager.js +180 -0
- package/dist/lib/Database/RedisManager.js +408 -0
- package/dist/lib/Logic/CacheTool.js +73 -0
- package/dist/lib/Logic/HttpTool.js +58 -0
- package/dist/lib/Logic/Log.js +77 -0
- package/dist/lib/Service/AccountService.js +473 -0
- package/dist/lib/Service/MongoAccountService.js +396 -0
- package/dist/lib/Service/MongoCacheService.js +27 -0
- package/dist/lib/Service/MongoUserService.js +93 -0
- package/dist/lib/Service/UserService.js +184 -0
- package/dist/lib/Service/ini.js +35 -0
- package/dist/lib/SocketServer/IClientWebSocket.js +71 -0
- package/dist/lib/SocketServer/IServerWebSocket.js +41 -0
- package/dist/lib/SocketServer/ISocketServer.js +190 -0
- package/dist/lib/SocketServer/IWebSocket.js +223 -0
- package/dist/lib/SocketServer/ProtoFilter/GoogleProtoFilter.js +57 -0
- package/dist/lib/SocketServer/ProtoFilter/IProtoFilter.js +8 -0
- package/dist/lib/SocketServer/ProtoFilter/JsonProtoFilter.js +29 -0
- package/dist/lib/SocketServer/ProtoFilter/ProtoFactory.js +31 -0
- package/dist/lib/ThirdParty/AlipayTool.js +122 -0
- package/dist/lib/ThirdParty/Alisms.js +46 -0
- package/dist/lib/ThirdParty/AppleTool.js +234 -0
- package/dist/lib/ThirdParty/EmailTool.js +33 -0
- package/dist/lib/ThirdParty/OpenSocial.js +32 -0
- package/dist/lib/ThirdParty/QQTool.js +115 -0
- package/dist/lib/ThirdParty/QiniuTool.js +21 -0
- package/dist/lib/ThirdParty/WechatOATool.js +61 -0
- package/dist/lib/ThirdParty/WechatTool.js +74 -0
- package/dist/lib/WebServer/Controller/BaseController.js +112 -0
- package/dist/lib/WebServer/Controller/BaseUserController.js +168 -0
- package/dist/lib/WebServer/Controller/MongoBaseUserController.js +168 -0
- package/dist/lib/WebServer/Decorator/AdminValidate.js +19 -0
- package/dist/lib/WebServer/Decorator/AuthorityValidate.js +22 -0
- package/dist/lib/WebServer/Decorator/CreatorValidate.js +19 -0
- package/dist/lib/WebServer/Decorator/JsonAdminValidate.js +15 -0
- package/dist/lib/WebServer/Decorator/JsonAuthorityValidate.js +20 -0
- package/dist/lib/WebServer/Decorator/JsonCreatorValidate.js +19 -0
- package/dist/lib/WebServer/Engine/ControllerManager.js +112 -0
- package/dist/lib/WebServer/Engine/Engine.js +135 -0
- package/dist/lib/WebServer/Engine/RazorJs.js +544 -0
- package/dist/lib/WebServer/Engine/Request.js +214 -0
- package/dist/lib/WebServer/Engine/Response.js +94 -0
- package/dist/lib/WebServer/IWebServer.js +49 -0
- package/dist/lib/cgserver.js +153 -0
- package/dist/{AI → types/AI}/AiObject.d.ts +0 -0
- package/dist/{AI → types/AI}/Astar.d.ts +0 -0
- package/dist/{AI → types/AI}/BehaviorAI.d.ts +0 -0
- package/dist/{AI → types/AI}/Entity.d.ts +0 -0
- package/dist/{AI → types/AI}/Point.d.ts +0 -0
- package/dist/{AI → types/AI}/TriggerMgr.d.ts +0 -0
- package/dist/{Config → types/Config}/Config.d.ts +0 -0
- package/dist/{Config → types/Config}/FrameworkConfig.d.ts +0 -0
- package/dist/{Config → types/Config}/ServerConfig.d.ts +0 -0
- package/dist/{Config → types/Config}/_error_.d.ts +0 -0
- package/dist/{Core → types/Core}/Core.d.ts +0 -0
- package/dist/{Core → types/Core}/Timer.d.ts +0 -0
- package/dist/{Database → types/Database}/BaseMongoService.d.ts +0 -0
- package/dist/{Database → types/Database}/BaseService.d.ts +0 -0
- package/dist/{Database → types/Database}/Decorator/AutoIncrement.d.ts +0 -0
- package/dist/{Database → types/Database}/Decorator/DBCache.d.ts +0 -0
- package/dist/{Database → types/Database}/Decorator/NotNull.d.ts +0 -0
- package/dist/{Database → types/Database}/Decorator/PrimaryKey.d.ts +0 -0
- package/dist/{Database → types/Database}/Decorator/Property.d.ts +0 -0
- package/dist/{Database → types/Database}/Decorator/Table.d.ts +0 -0
- package/dist/{Database → types/Database}/Decorator/Type.d.ts +0 -0
- package/dist/{Database → types/Database}/MSSqlManager.d.ts +0 -0
- package/dist/{Database → types/Database}/MongoManager.d.ts +0 -0
- package/dist/{Database → types/Database}/MysqlManager.d.ts +0 -0
- package/dist/{Database → types/Database}/RedisManager.d.ts +0 -0
- package/dist/{Logic → types/Logic}/CacheTool.d.ts +0 -0
- package/dist/{Logic → types/Logic}/HttpTool.d.ts +0 -0
- package/dist/{Logic → types/Logic}/Log.d.ts +0 -0
- package/dist/{Service → types/Service}/AccountService.d.ts +0 -0
- package/dist/{Service → types/Service}/MongoAccountService.d.ts +0 -0
- package/dist/{Service → types/Service}/MongoCacheService.d.ts +0 -0
- package/dist/{Service → types/Service}/MongoUserService.d.ts +0 -0
- package/dist/{Service → types/Service}/UserService.d.ts +0 -0
- package/dist/{Service → types/Service}/ini.d.ts +0 -0
- package/dist/{SocketServer → types/SocketServer}/IClientWebSocket.d.ts +0 -0
- package/dist/{SocketServer → types/SocketServer}/IServerWebSocket.d.ts +0 -0
- package/dist/{SocketServer → types/SocketServer}/ISocketServer.d.ts +0 -0
- package/dist/{SocketServer → types/SocketServer}/IWebSocket.d.ts +0 -0
- package/dist/{SocketServer → types/SocketServer}/ProtoFilter/GoogleProtoFilter.d.ts +0 -0
- package/dist/{SocketServer → types/SocketServer}/ProtoFilter/IProtoFilter.d.ts +0 -0
- package/dist/{SocketServer → types/SocketServer}/ProtoFilter/JsonProtoFilter.d.ts +0 -0
- package/dist/{SocketServer → types/SocketServer}/ProtoFilter/ProtoFactory.d.ts +0 -0
- package/dist/{ThirdParty → types/ThirdParty}/AlipayTool.d.ts +0 -0
- package/dist/{ThirdParty → types/ThirdParty}/Alisms.d.ts +0 -0
- package/dist/{ThirdParty → types/ThirdParty}/AppleTool.d.ts +0 -0
- package/dist/{ThirdParty → types/ThirdParty}/EmailTool.d.ts +0 -0
- package/dist/{ThirdParty → types/ThirdParty}/OpenSocial.d.ts +0 -0
- package/dist/{ThirdParty → types/ThirdParty}/QQTool.d.ts +0 -0
- package/dist/{ThirdParty → types/ThirdParty}/QiniuTool.d.ts +0 -0
- package/dist/{ThirdParty → types/ThirdParty}/WechatOATool.d.ts +0 -0
- package/dist/{ThirdParty → types/ThirdParty}/WechatTool.d.ts +0 -0
- package/dist/{WebServer → types/WebServer}/Controller/BaseController.d.ts +0 -0
- package/dist/{WebServer → types/WebServer}/Controller/BaseUserController.d.ts +0 -0
- package/dist/{WebServer → types/WebServer}/Controller/MongoBaseUserController.d.ts +0 -0
- package/dist/{WebServer → types/WebServer}/Decorator/AdminValidate.d.ts +0 -0
- package/dist/{WebServer → types/WebServer}/Decorator/AuthorityValidate.d.ts +0 -0
- package/dist/{WebServer → types/WebServer}/Decorator/CreatorValidate.d.ts +0 -0
- package/dist/{WebServer → types/WebServer}/Decorator/JsonAdminValidate.d.ts +0 -0
- package/dist/{WebServer → types/WebServer}/Decorator/JsonAuthorityValidate.d.ts +0 -0
- package/dist/{WebServer → types/WebServer}/Decorator/JsonCreatorValidate.d.ts +0 -0
- package/dist/{WebServer → types/WebServer}/Engine/ControllerManager.d.ts +0 -0
- package/dist/{WebServer → types/WebServer}/Engine/Engine.d.ts +0 -0
- package/dist/{WebServer → types/WebServer}/Engine/RazorJs.d.ts +0 -0
- package/dist/{WebServer → types/WebServer}/Engine/Request.d.ts +0 -0
- package/dist/{WebServer → types/WebServer}/Engine/Response.d.ts +0 -0
- package/dist/{WebServer → types/WebServer}/IWebServer.d.ts +0 -0
- package/dist/{cgserver.d.ts → types/cgserver.d.ts} +0 -0
- package/package.json +3 -2
- package/dist/cgserver.js +0 -1037
|
@@ -0,0 +1,214 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Request = void 0;
|
|
4
|
+
const qs = require("querystring");
|
|
5
|
+
const Core_1 = require("../../Core/Core");
|
|
6
|
+
const Log_1 = require("../../Logic/Log");
|
|
7
|
+
class Request {
|
|
8
|
+
_req = null;
|
|
9
|
+
get baseReq() {
|
|
10
|
+
return this._req;
|
|
11
|
+
}
|
|
12
|
+
_cfg = null;
|
|
13
|
+
_post_cb = null;
|
|
14
|
+
set onPost(value) {
|
|
15
|
+
this._post_cb = value;
|
|
16
|
+
}
|
|
17
|
+
_module = "";
|
|
18
|
+
get module() {
|
|
19
|
+
return this._module;
|
|
20
|
+
}
|
|
21
|
+
_controller = "";
|
|
22
|
+
get controller() {
|
|
23
|
+
return this._controller;
|
|
24
|
+
}
|
|
25
|
+
_action = "";
|
|
26
|
+
get action() {
|
|
27
|
+
return this._action;
|
|
28
|
+
}
|
|
29
|
+
_suffix = "";
|
|
30
|
+
get suffix() {
|
|
31
|
+
return this._suffix;
|
|
32
|
+
}
|
|
33
|
+
_file_url = null;
|
|
34
|
+
get fileUrl() {
|
|
35
|
+
return this._file_url;
|
|
36
|
+
}
|
|
37
|
+
_params = {};
|
|
38
|
+
get params() {
|
|
39
|
+
var body = (this._req.query || {});
|
|
40
|
+
for (let k in body) {
|
|
41
|
+
var v = body[k];
|
|
42
|
+
if (!Core_1.core.isString(v)) {
|
|
43
|
+
continue;
|
|
44
|
+
}
|
|
45
|
+
if (parseInt(v) == v) {
|
|
46
|
+
body[k] = parseInt(v);
|
|
47
|
+
}
|
|
48
|
+
else if (parseFloat(v) == v) {
|
|
49
|
+
body[k] == parseFloat(v);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
return body;
|
|
53
|
+
}
|
|
54
|
+
get postData() {
|
|
55
|
+
var body = this._req.body || {};
|
|
56
|
+
//服务器会有一层空key的json解析
|
|
57
|
+
for (let k in body) {
|
|
58
|
+
var v = body[k];
|
|
59
|
+
if (!Core_1.core.isString(v)) {
|
|
60
|
+
continue;
|
|
61
|
+
}
|
|
62
|
+
if (parseInt(v) == v) {
|
|
63
|
+
body[k] = parseInt(v);
|
|
64
|
+
}
|
|
65
|
+
else if (parseFloat(v) == v) {
|
|
66
|
+
body[k] == parseFloat(v);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
return body;
|
|
70
|
+
}
|
|
71
|
+
get url() {
|
|
72
|
+
return this._req.url;
|
|
73
|
+
}
|
|
74
|
+
get root() {
|
|
75
|
+
let root = this._req.headers.host;
|
|
76
|
+
if (root != "") {
|
|
77
|
+
root = this._req.protocol + "://" + root;
|
|
78
|
+
}
|
|
79
|
+
return root;
|
|
80
|
+
}
|
|
81
|
+
get method() {
|
|
82
|
+
return this._req.method;
|
|
83
|
+
}
|
|
84
|
+
get headers() {
|
|
85
|
+
return this._req.headers;
|
|
86
|
+
}
|
|
87
|
+
get remoteHost() {
|
|
88
|
+
let ips = this._req.headers['x-forwarded-for'];
|
|
89
|
+
let ip = "";
|
|
90
|
+
if (Core_1.core.isArray(ips)) {
|
|
91
|
+
ip = ips[0];
|
|
92
|
+
}
|
|
93
|
+
else {
|
|
94
|
+
ip = ips;
|
|
95
|
+
}
|
|
96
|
+
ip = ip ||
|
|
97
|
+
this._req.connection.remoteAddress ||
|
|
98
|
+
this._req.socket.remoteAddress ||
|
|
99
|
+
this._req.ip || "";
|
|
100
|
+
ip = ip.replace("::ffff:", "");
|
|
101
|
+
return ip;
|
|
102
|
+
}
|
|
103
|
+
constructor(req, cfg) {
|
|
104
|
+
this._cfg = cfg;
|
|
105
|
+
this._req = req;
|
|
106
|
+
this._init();
|
|
107
|
+
}
|
|
108
|
+
getCookie(key) {
|
|
109
|
+
let cookie_key = this._cfg.cookie.prefix + key;
|
|
110
|
+
if (!this._req.cookies) {
|
|
111
|
+
return null;
|
|
112
|
+
}
|
|
113
|
+
return this._req.cookies[cookie_key];
|
|
114
|
+
}
|
|
115
|
+
_init() {
|
|
116
|
+
let method = this._req.method.toLowerCase();
|
|
117
|
+
if (method != "get" && method != "post") {
|
|
118
|
+
return;
|
|
119
|
+
}
|
|
120
|
+
let path = this._req.url;
|
|
121
|
+
//服务器根目录路径写法,链接转换
|
|
122
|
+
let _i = path.lastIndexOf("~");
|
|
123
|
+
if (_i >= 0) {
|
|
124
|
+
path = path.substr(_i + 1);
|
|
125
|
+
}
|
|
126
|
+
//处理参数
|
|
127
|
+
this._parseParams(path);
|
|
128
|
+
}
|
|
129
|
+
_addListener(event, listener) {
|
|
130
|
+
this._req.addListener(event, listener);
|
|
131
|
+
}
|
|
132
|
+
_parseParams(path) {
|
|
133
|
+
this._module = this._cfg.routs.onlyModule || this._cfg.routs.defaults.module;
|
|
134
|
+
this._controller = this._cfg.routs.defaults.controller;
|
|
135
|
+
this._action = this._cfg.routs.defaults.action;
|
|
136
|
+
this._suffix = null;
|
|
137
|
+
this._file_url = null;
|
|
138
|
+
this._params = {};
|
|
139
|
+
if (path == "/") {
|
|
140
|
+
return;
|
|
141
|
+
}
|
|
142
|
+
let firstQuoteIndex = path.indexOf("?");
|
|
143
|
+
let preQuoteStr = path;
|
|
144
|
+
if (firstQuoteIndex > 0) {
|
|
145
|
+
preQuoteStr = path.substr(0, firstQuoteIndex);
|
|
146
|
+
}
|
|
147
|
+
let lastDotIndex = preQuoteStr.lastIndexOf(".");
|
|
148
|
+
if (lastDotIndex > 0) {
|
|
149
|
+
let dotStr = preQuoteStr.substr(lastDotIndex + 1);
|
|
150
|
+
this._suffix = dotStr;
|
|
151
|
+
this._file_url = preQuoteStr;
|
|
152
|
+
return;
|
|
153
|
+
}
|
|
154
|
+
let quote_index = path.indexOf("?");
|
|
155
|
+
if (quote_index >= 0) {
|
|
156
|
+
let p = path.substr(quote_index + 1);
|
|
157
|
+
path = path.substr(0, quote_index);
|
|
158
|
+
this._params = qs.parse(p);
|
|
159
|
+
}
|
|
160
|
+
let params = path.split("/");
|
|
161
|
+
let default_module = false;
|
|
162
|
+
if (this._cfg.routs.onlyModule) {
|
|
163
|
+
default_module = true;
|
|
164
|
+
}
|
|
165
|
+
if (params.length > 1 && params[1].length > 0) {
|
|
166
|
+
/**
|
|
167
|
+
* 如果是only模式,那么就不支持controller和module相同,
|
|
168
|
+
* 如果相同则认为是模块名,这样就可以同时支持,带模块的路径模式和非带模块的路径模式了
|
|
169
|
+
*/
|
|
170
|
+
if (default_module
|
|
171
|
+
&& params[1].toLowerCase() == this._cfg.routs.onlyModule.toLowerCase()) {
|
|
172
|
+
default_module = false;
|
|
173
|
+
}
|
|
174
|
+
if (default_module) {
|
|
175
|
+
this._controller = params[1];
|
|
176
|
+
}
|
|
177
|
+
else {
|
|
178
|
+
this._module = params[1];
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
if (params.length > 2 && params[2].length > 0) {
|
|
182
|
+
if (default_module) {
|
|
183
|
+
this._action = params[2];
|
|
184
|
+
}
|
|
185
|
+
else {
|
|
186
|
+
this._controller = params[2];
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
if (params.length > 3
|
|
190
|
+
&& params[3].length > 0
|
|
191
|
+
&& !default_module) {
|
|
192
|
+
this._action = params[3];
|
|
193
|
+
}
|
|
194
|
+
this._params = this._params || {};
|
|
195
|
+
return;
|
|
196
|
+
}
|
|
197
|
+
debugInfo() {
|
|
198
|
+
if (!this._cfg.debug) {
|
|
199
|
+
return;
|
|
200
|
+
}
|
|
201
|
+
let debuginfo = {
|
|
202
|
+
module: this._module,
|
|
203
|
+
controller: this._controller,
|
|
204
|
+
action: this._action,
|
|
205
|
+
suffix: this._suffix,
|
|
206
|
+
file_url: this._file_url,
|
|
207
|
+
params: this._params,
|
|
208
|
+
post: this.postData,
|
|
209
|
+
method: this._req.method.toLowerCase()
|
|
210
|
+
};
|
|
211
|
+
Log_1.GLog.info(debuginfo, true);
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
exports.Request = Request;
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Response = void 0;
|
|
4
|
+
const fs = require("fs");
|
|
5
|
+
const mime = require("mime");
|
|
6
|
+
const Log_1 = require("../../Logic/Log");
|
|
7
|
+
class Response {
|
|
8
|
+
_res = null;
|
|
9
|
+
_cookie_prefix = "";
|
|
10
|
+
_cfg = null;
|
|
11
|
+
constructor(res, cfg) {
|
|
12
|
+
this._cfg = cfg;
|
|
13
|
+
this._res = res;
|
|
14
|
+
this._cookie_prefix = this._cfg.cookie.prefix;
|
|
15
|
+
this._init();
|
|
16
|
+
}
|
|
17
|
+
_init() {
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
*
|
|
21
|
+
* @param key
|
|
22
|
+
* @param value
|
|
23
|
+
* @param time 秒
|
|
24
|
+
*/
|
|
25
|
+
setCookie(key, value, time) {
|
|
26
|
+
key = this._cookie_prefix + key;
|
|
27
|
+
if (time) {
|
|
28
|
+
this._res.cookie(key, value, { maxAge: time * 1000, httpOnly: true });
|
|
29
|
+
}
|
|
30
|
+
else {
|
|
31
|
+
this._res.cookie(key, value, { httpOnly: true });
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
clearCookie(key) {
|
|
35
|
+
this.setCookie(key, "", -1000);
|
|
36
|
+
}
|
|
37
|
+
redirect(path) {
|
|
38
|
+
this._res.writeHead(302, { 'Location': path });
|
|
39
|
+
this._res.end();
|
|
40
|
+
}
|
|
41
|
+
renderJson(data, origin) {
|
|
42
|
+
this._res.json(data);
|
|
43
|
+
this.debugInfo(data);
|
|
44
|
+
}
|
|
45
|
+
renderJson404(origin) {
|
|
46
|
+
this._res.status(404).json();
|
|
47
|
+
}
|
|
48
|
+
renderJson500(origin) {
|
|
49
|
+
this._res.status(500).json();
|
|
50
|
+
this.debugInfo("500");
|
|
51
|
+
}
|
|
52
|
+
renderHtml(html) {
|
|
53
|
+
this._res.send(html || "");
|
|
54
|
+
}
|
|
55
|
+
render404(html) {
|
|
56
|
+
this._res.status(404).send("没找到该页面");
|
|
57
|
+
}
|
|
58
|
+
renderOptions(method, origin) {
|
|
59
|
+
this._res.sendStatus(204);
|
|
60
|
+
}
|
|
61
|
+
renderFile(fullPath) {
|
|
62
|
+
this._res.sendFile(fullPath);
|
|
63
|
+
}
|
|
64
|
+
downloadFile(fullPath) {
|
|
65
|
+
let fileName = "";
|
|
66
|
+
let quote_index = fullPath.indexOf("/");
|
|
67
|
+
if (quote_index > 0) {
|
|
68
|
+
fileName = fullPath.substring(quote_index + 1);
|
|
69
|
+
}
|
|
70
|
+
fs.stat(fullPath, (err, stats) => {
|
|
71
|
+
if (!stats || stats.isDirectory()) {
|
|
72
|
+
return this.render404("");
|
|
73
|
+
}
|
|
74
|
+
let size = stats.size;
|
|
75
|
+
var f = fs.createReadStream(fullPath);
|
|
76
|
+
this._res.writeHead(200, {
|
|
77
|
+
'Content-Type': mime.getType(fullPath) || 'application/octet-stream',
|
|
78
|
+
'Content-Disposition': 'attachment; filename=' + fileName,
|
|
79
|
+
'Content-Length': size
|
|
80
|
+
});
|
|
81
|
+
f.pipe(this._res);
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
render304() {
|
|
85
|
+
this._res.sendStatus(304);
|
|
86
|
+
}
|
|
87
|
+
debugInfo(data) {
|
|
88
|
+
if (!this._cfg.debug) {
|
|
89
|
+
return;
|
|
90
|
+
}
|
|
91
|
+
Log_1.GLog.info(data, true);
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
exports.Response = Response;
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.IWebServer = void 0;
|
|
4
|
+
const Engine_1 = require("./Engine/Engine");
|
|
5
|
+
const Log_1 = require("../Logic/Log");
|
|
6
|
+
const RedisManager_1 = require("../Database/RedisManager");
|
|
7
|
+
const MysqlManager_1 = require("../Database/MysqlManager");
|
|
8
|
+
const FrameworkConfig_1 = require("../Config/FrameworkConfig");
|
|
9
|
+
const RazorJs_1 = require("./Engine/RazorJs");
|
|
10
|
+
const MongoManager_1 = require("../Database/MongoManager");
|
|
11
|
+
const AlipayTool_1 = require("../ThirdParty/AlipayTool");
|
|
12
|
+
//实现对controller的手动注册
|
|
13
|
+
class IWebServer {
|
|
14
|
+
_engine = null;
|
|
15
|
+
/**
|
|
16
|
+
* 启动服务器
|
|
17
|
+
* @param server_index 这个是服务器的配置index
|
|
18
|
+
*/
|
|
19
|
+
async start(cfg) {
|
|
20
|
+
if (!cfg) {
|
|
21
|
+
Log_1.GLog.error("webserver 配置不存在,启动服务器失败");
|
|
22
|
+
return false;
|
|
23
|
+
}
|
|
24
|
+
await RedisManager_1.GRedisMgr.init(FrameworkConfig_1.GFCfg.db.redis);
|
|
25
|
+
await MysqlManager_1.GMysqlMgr.init();
|
|
26
|
+
await MongoManager_1.GMongoMgr.init();
|
|
27
|
+
AlipayTool_1.GAlipayTool.init();
|
|
28
|
+
//初始化web引擎
|
|
29
|
+
this._engine = new Engine_1.Engine(cfg, new RazorJs_1.RazorJs());
|
|
30
|
+
this._engine.start();
|
|
31
|
+
this._registerController();
|
|
32
|
+
this._registerRouter();
|
|
33
|
+
}
|
|
34
|
+
stop() {
|
|
35
|
+
this._engine.stop();
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* 注册控制器
|
|
39
|
+
* eg:GControllerMgr.registerController("Admin","System",SystemController)
|
|
40
|
+
*/
|
|
41
|
+
_registerController() {
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* 注册路由
|
|
45
|
+
*/
|
|
46
|
+
_registerRouter() {
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
exports.IWebServer = IWebServer;
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.IWebSocket = exports.ISocketServer = exports.IServerWebSocket = exports.IClientWebSocket = exports.JsonProtoFilter = exports.GoogleProtoFilter = exports.MongoUserModel = exports.MysqlUserModel = exports.MongoUserService = exports.MysqlUserService = exports.GMongoAccountSer = exports.MongoAccountService = exports.GMysqlAccountSer = exports.MysqlAccountService = exports.EAccountFrom = exports.EUserState = exports.ERoleGroup = exports.GLog = exports.GHttpTool = exports.GCacheTool = exports.GRedisMgr = exports.GMysqlMgr = exports.MysqlBaseService = exports.GMSSqlMgr = exports.GMongoMgr = exports.MongoBaseModel = exports.MysqlBaseModel = exports.MongoBaseService = exports.EPropertyType = exports.Type = exports.Table = exports.Property = exports.PrimaryKey = exports.NotNull = exports.AutoIncrement = exports.Timer = exports.core = exports.ServerConfig = exports.FrameworkConfig = exports.Config = exports.FrameworkErrorCode = exports.GTriggerMgr = exports.Trigger = exports.Point = exports.Entity = exports.BehaviorAI = exports.AStar = exports.AiObject = exports.GDBCache = exports.GProtoFactory = void 0;
|
|
4
|
+
exports.WebServerConfig = exports.Response = exports.Request = exports.RazorJs = exports.Engine = exports.GCtrMgr = exports.JsonCreatorValidate = exports.JsonAuthorityValidate = exports.JsonAdminValidate = exports.CreatorValidate = exports.AuthorityValidate = exports.AdminValidate = exports.MongoAccountModel = exports.MysqlAccountModel = exports.MongoBaseUserController = exports.BaseUserController = exports.BaseController = exports.IWebServer = exports.GWechatTool = exports.GWechatOATool = exports.GQQTool = exports.GQiniuTool = exports.GOpenSocial = exports.GEmailTool = exports.GAppleTool = exports.GSmsTool = exports.GAlipayTool = void 0;
|
|
5
|
+
var ProtoFactory_1 = require("./SocketServer/ProtoFilter/ProtoFactory");
|
|
6
|
+
Object.defineProperty(exports, "GProtoFactory", { enumerable: true, get: function () { return ProtoFactory_1.GProtoFactory; } });
|
|
7
|
+
var DBCache_1 = require("./Database/Decorator/DBCache");
|
|
8
|
+
Object.defineProperty(exports, "GDBCache", { enumerable: true, get: function () { return DBCache_1.GDBCache; } });
|
|
9
|
+
var AiObject_1 = require("./AI/AiObject");
|
|
10
|
+
Object.defineProperty(exports, "AiObject", { enumerable: true, get: function () { return AiObject_1.AiObject; } });
|
|
11
|
+
var Astar_1 = require("./AI/Astar");
|
|
12
|
+
Object.defineProperty(exports, "AStar", { enumerable: true, get: function () { return Astar_1.AStar; } });
|
|
13
|
+
var BehaviorAI_1 = require("./AI/BehaviorAI");
|
|
14
|
+
Object.defineProperty(exports, "BehaviorAI", { enumerable: true, get: function () { return BehaviorAI_1.BehaviorAI; } });
|
|
15
|
+
var Entity_1 = require("./AI/Entity");
|
|
16
|
+
Object.defineProperty(exports, "Entity", { enumerable: true, get: function () { return Entity_1.Entity; } });
|
|
17
|
+
var Point_1 = require("./AI/Point");
|
|
18
|
+
Object.defineProperty(exports, "Point", { enumerable: true, get: function () { return Point_1.Point; } });
|
|
19
|
+
var TriggerMgr_1 = require("./AI/TriggerMgr");
|
|
20
|
+
Object.defineProperty(exports, "Trigger", { enumerable: true, get: function () { return TriggerMgr_1.Trigger; } });
|
|
21
|
+
Object.defineProperty(exports, "GTriggerMgr", { enumerable: true, get: function () { return TriggerMgr_1.GTriggerMgr; } });
|
|
22
|
+
var _error_1 = require("./Config/_error_");
|
|
23
|
+
Object.defineProperty(exports, "FrameworkErrorCode", { enumerable: true, get: function () { return _error_1.FrameworkErrorCode; } });
|
|
24
|
+
var Config_1 = require("./Config/Config");
|
|
25
|
+
Object.defineProperty(exports, "Config", { enumerable: true, get: function () { return Config_1.Config; } });
|
|
26
|
+
var FrameworkConfig_1 = require("./Config/FrameworkConfig");
|
|
27
|
+
Object.defineProperty(exports, "FrameworkConfig", { enumerable: true, get: function () { return FrameworkConfig_1.FrameworkConfig; } });
|
|
28
|
+
var ServerConfig_1 = require("./Config/ServerConfig");
|
|
29
|
+
Object.defineProperty(exports, "ServerConfig", { enumerable: true, get: function () { return ServerConfig_1.ServerConfig; } });
|
|
30
|
+
var Core_1 = require("./Core/Core");
|
|
31
|
+
Object.defineProperty(exports, "core", { enumerable: true, get: function () { return Core_1.core; } });
|
|
32
|
+
var Timer_1 = require("./Core/Timer");
|
|
33
|
+
Object.defineProperty(exports, "Timer", { enumerable: true, get: function () { return Timer_1.Timer; } });
|
|
34
|
+
var AutoIncrement_1 = require("./Database/Decorator/AutoIncrement");
|
|
35
|
+
Object.defineProperty(exports, "AutoIncrement", { enumerable: true, get: function () { return AutoIncrement_1.AutoIncrement; } });
|
|
36
|
+
var NotNull_1 = require("./Database/Decorator/NotNull");
|
|
37
|
+
Object.defineProperty(exports, "NotNull", { enumerable: true, get: function () { return NotNull_1.NotNull; } });
|
|
38
|
+
var PrimaryKey_1 = require("./Database/Decorator/PrimaryKey");
|
|
39
|
+
Object.defineProperty(exports, "PrimaryKey", { enumerable: true, get: function () { return PrimaryKey_1.PrimaryKey; } });
|
|
40
|
+
var Property_1 = require("./Database/Decorator/Property");
|
|
41
|
+
Object.defineProperty(exports, "Property", { enumerable: true, get: function () { return Property_1.Property; } });
|
|
42
|
+
var Table_1 = require("./Database/Decorator/Table");
|
|
43
|
+
Object.defineProperty(exports, "Table", { enumerable: true, get: function () { return Table_1.Table; } });
|
|
44
|
+
var Type_1 = require("./Database/Decorator/Type");
|
|
45
|
+
Object.defineProperty(exports, "Type", { enumerable: true, get: function () { return Type_1.Type; } });
|
|
46
|
+
var Property_2 = require("./Database/Decorator/Property");
|
|
47
|
+
Object.defineProperty(exports, "EPropertyType", { enumerable: true, get: function () { return Property_2.EPropertyType; } });
|
|
48
|
+
var BaseMongoService_1 = require("./Database/BaseMongoService");
|
|
49
|
+
Object.defineProperty(exports, "MongoBaseService", { enumerable: true, get: function () { return BaseMongoService_1.BaseService; } });
|
|
50
|
+
var BaseService_1 = require("./Database/BaseService");
|
|
51
|
+
Object.defineProperty(exports, "MysqlBaseModel", { enumerable: true, get: function () { return BaseService_1.BaseModel; } });
|
|
52
|
+
var MongoManager_1 = require("./Database/MongoManager");
|
|
53
|
+
Object.defineProperty(exports, "MongoBaseModel", { enumerable: true, get: function () { return MongoManager_1.MongoBaseModel; } });
|
|
54
|
+
var MongoManager_2 = require("./Database/MongoManager");
|
|
55
|
+
Object.defineProperty(exports, "GMongoMgr", { enumerable: true, get: function () { return MongoManager_2.GMongoMgr; } });
|
|
56
|
+
var MSSqlManager_1 = require("./Database/MSSqlManager");
|
|
57
|
+
Object.defineProperty(exports, "GMSSqlMgr", { enumerable: true, get: function () { return MSSqlManager_1.GMSSqlMgr; } });
|
|
58
|
+
var BaseService_2 = require("./Database/BaseService");
|
|
59
|
+
Object.defineProperty(exports, "MysqlBaseService", { enumerable: true, get: function () { return BaseService_2.BaseService; } });
|
|
60
|
+
var MysqlManager_1 = require("./Database/MysqlManager");
|
|
61
|
+
Object.defineProperty(exports, "GMysqlMgr", { enumerable: true, get: function () { return MysqlManager_1.GMysqlMgr; } });
|
|
62
|
+
var RedisManager_1 = require("./Database/RedisManager");
|
|
63
|
+
Object.defineProperty(exports, "GRedisMgr", { enumerable: true, get: function () { return RedisManager_1.GRedisMgr; } });
|
|
64
|
+
var CacheTool_1 = require("./Logic/CacheTool");
|
|
65
|
+
Object.defineProperty(exports, "GCacheTool", { enumerable: true, get: function () { return CacheTool_1.GCacheTool; } });
|
|
66
|
+
var HttpTool_1 = require("./Logic/HttpTool");
|
|
67
|
+
Object.defineProperty(exports, "GHttpTool", { enumerable: true, get: function () { return HttpTool_1.GHttpTool; } });
|
|
68
|
+
var Log_1 = require("./Logic/Log");
|
|
69
|
+
Object.defineProperty(exports, "GLog", { enumerable: true, get: function () { return Log_1.GLog; } });
|
|
70
|
+
var ini_1 = require("./Service/ini");
|
|
71
|
+
Object.defineProperty(exports, "ERoleGroup", { enumerable: true, get: function () { return ini_1.ERoleGroup; } });
|
|
72
|
+
Object.defineProperty(exports, "EUserState", { enumerable: true, get: function () { return ini_1.EUserState; } });
|
|
73
|
+
Object.defineProperty(exports, "EAccountFrom", { enumerable: true, get: function () { return ini_1.EAccountFrom; } });
|
|
74
|
+
var AccountService_1 = require("./Service/AccountService");
|
|
75
|
+
Object.defineProperty(exports, "MysqlAccountService", { enumerable: true, get: function () { return AccountService_1.AccountService; } });
|
|
76
|
+
Object.defineProperty(exports, "GMysqlAccountSer", { enumerable: true, get: function () { return AccountService_1.GAccountSer; } });
|
|
77
|
+
var MongoAccountService_1 = require("./Service/MongoAccountService");
|
|
78
|
+
Object.defineProperty(exports, "MongoAccountService", { enumerable: true, get: function () { return MongoAccountService_1.AccountService; } });
|
|
79
|
+
Object.defineProperty(exports, "GMongoAccountSer", { enumerable: true, get: function () { return MongoAccountService_1.GAccountSer; } });
|
|
80
|
+
var UserService_1 = require("./Service/UserService");
|
|
81
|
+
Object.defineProperty(exports, "MysqlUserService", { enumerable: true, get: function () { return UserService_1.UserService; } });
|
|
82
|
+
var MongoUserService_1 = require("./Service/MongoUserService");
|
|
83
|
+
Object.defineProperty(exports, "MongoUserService", { enumerable: true, get: function () { return MongoUserService_1.UserService; } });
|
|
84
|
+
var UserService_2 = require("./Service/UserService");
|
|
85
|
+
Object.defineProperty(exports, "MysqlUserModel", { enumerable: true, get: function () { return UserService_2.UserModel; } });
|
|
86
|
+
var MongoUserService_2 = require("./Service/MongoUserService");
|
|
87
|
+
Object.defineProperty(exports, "MongoUserModel", { enumerable: true, get: function () { return MongoUserService_2.UserModel; } });
|
|
88
|
+
var GoogleProtoFilter_1 = require("./SocketServer/ProtoFilter/GoogleProtoFilter");
|
|
89
|
+
Object.defineProperty(exports, "GoogleProtoFilter", { enumerable: true, get: function () { return GoogleProtoFilter_1.GoogleProtoFilter; } });
|
|
90
|
+
var JsonProtoFilter_1 = require("./SocketServer/ProtoFilter/JsonProtoFilter");
|
|
91
|
+
Object.defineProperty(exports, "JsonProtoFilter", { enumerable: true, get: function () { return JsonProtoFilter_1.JsonProtoFilter; } });
|
|
92
|
+
var IClientWebSocket_1 = require("./SocketServer/IClientWebSocket");
|
|
93
|
+
Object.defineProperty(exports, "IClientWebSocket", { enumerable: true, get: function () { return IClientWebSocket_1.IClientWebSocket; } });
|
|
94
|
+
var IServerWebSocket_1 = require("./SocketServer/IServerWebSocket");
|
|
95
|
+
Object.defineProperty(exports, "IServerWebSocket", { enumerable: true, get: function () { return IServerWebSocket_1.IServerWebSocket; } });
|
|
96
|
+
var ISocketServer_1 = require("./SocketServer/ISocketServer");
|
|
97
|
+
Object.defineProperty(exports, "ISocketServer", { enumerable: true, get: function () { return ISocketServer_1.ISocketServer; } });
|
|
98
|
+
var IWebSocket_1 = require("./SocketServer/IWebSocket");
|
|
99
|
+
Object.defineProperty(exports, "IWebSocket", { enumerable: true, get: function () { return IWebSocket_1.IWebSocket; } });
|
|
100
|
+
var AlipayTool_1 = require("./ThirdParty/AlipayTool");
|
|
101
|
+
Object.defineProperty(exports, "GAlipayTool", { enumerable: true, get: function () { return AlipayTool_1.GAlipayTool; } });
|
|
102
|
+
var Alisms_1 = require("./ThirdParty/Alisms");
|
|
103
|
+
Object.defineProperty(exports, "GSmsTool", { enumerable: true, get: function () { return Alisms_1.GSmsTool; } });
|
|
104
|
+
var AppleTool_1 = require("./ThirdParty/AppleTool");
|
|
105
|
+
Object.defineProperty(exports, "GAppleTool", { enumerable: true, get: function () { return AppleTool_1.GAppleTool; } });
|
|
106
|
+
var EmailTool_1 = require("./ThirdParty/EmailTool");
|
|
107
|
+
Object.defineProperty(exports, "GEmailTool", { enumerable: true, get: function () { return EmailTool_1.GEmailTool; } });
|
|
108
|
+
var OpenSocial_1 = require("./ThirdParty/OpenSocial");
|
|
109
|
+
Object.defineProperty(exports, "GOpenSocial", { enumerable: true, get: function () { return OpenSocial_1.GOpenSocial; } });
|
|
110
|
+
var QiniuTool_1 = require("./ThirdParty/QiniuTool");
|
|
111
|
+
Object.defineProperty(exports, "GQiniuTool", { enumerable: true, get: function () { return QiniuTool_1.GQiniuTool; } });
|
|
112
|
+
var QQTool_1 = require("./ThirdParty/QQTool");
|
|
113
|
+
Object.defineProperty(exports, "GQQTool", { enumerable: true, get: function () { return QQTool_1.GQQTool; } });
|
|
114
|
+
var WechatOATool_1 = require("./ThirdParty/WechatOATool");
|
|
115
|
+
Object.defineProperty(exports, "GWechatOATool", { enumerable: true, get: function () { return WechatOATool_1.GWechatOATool; } });
|
|
116
|
+
var WechatTool_1 = require("./ThirdParty/WechatTool");
|
|
117
|
+
Object.defineProperty(exports, "GWechatTool", { enumerable: true, get: function () { return WechatTool_1.GWechatTool; } });
|
|
118
|
+
var IWebServer_1 = require("./WebServer/IWebServer");
|
|
119
|
+
Object.defineProperty(exports, "IWebServer", { enumerable: true, get: function () { return IWebServer_1.IWebServer; } });
|
|
120
|
+
var BaseController_1 = require("./WebServer/Controller/BaseController");
|
|
121
|
+
Object.defineProperty(exports, "BaseController", { enumerable: true, get: function () { return BaseController_1.BaseController; } });
|
|
122
|
+
var BaseUserController_1 = require("./WebServer/Controller/BaseUserController");
|
|
123
|
+
Object.defineProperty(exports, "BaseUserController", { enumerable: true, get: function () { return BaseUserController_1.BaseUserController; } });
|
|
124
|
+
var MongoBaseUserController_1 = require("./WebServer/Controller/MongoBaseUserController");
|
|
125
|
+
Object.defineProperty(exports, "MongoBaseUserController", { enumerable: true, get: function () { return MongoBaseUserController_1.MongoBaseUserController; } });
|
|
126
|
+
var AccountService_2 = require("./Service/AccountService");
|
|
127
|
+
Object.defineProperty(exports, "MysqlAccountModel", { enumerable: true, get: function () { return AccountService_2.AccountModel; } });
|
|
128
|
+
var MongoAccountService_2 = require("./Service/MongoAccountService");
|
|
129
|
+
Object.defineProperty(exports, "MongoAccountModel", { enumerable: true, get: function () { return MongoAccountService_2.AccountModel; } });
|
|
130
|
+
var AdminValidate_1 = require("./WebServer/Decorator/AdminValidate");
|
|
131
|
+
Object.defineProperty(exports, "AdminValidate", { enumerable: true, get: function () { return AdminValidate_1.AdminValidate; } });
|
|
132
|
+
var AuthorityValidate_1 = require("./WebServer/Decorator/AuthorityValidate");
|
|
133
|
+
Object.defineProperty(exports, "AuthorityValidate", { enumerable: true, get: function () { return AuthorityValidate_1.AuthorityValidate; } });
|
|
134
|
+
var CreatorValidate_1 = require("./WebServer/Decorator/CreatorValidate");
|
|
135
|
+
Object.defineProperty(exports, "CreatorValidate", { enumerable: true, get: function () { return CreatorValidate_1.CreatorValidate; } });
|
|
136
|
+
var JsonAdminValidate_1 = require("./WebServer/Decorator/JsonAdminValidate");
|
|
137
|
+
Object.defineProperty(exports, "JsonAdminValidate", { enumerable: true, get: function () { return JsonAdminValidate_1.JsonAdminValidate; } });
|
|
138
|
+
var JsonAuthorityValidate_1 = require("./WebServer/Decorator/JsonAuthorityValidate");
|
|
139
|
+
Object.defineProperty(exports, "JsonAuthorityValidate", { enumerable: true, get: function () { return JsonAuthorityValidate_1.JsonAuthorityValidate; } });
|
|
140
|
+
var JsonCreatorValidate_1 = require("./WebServer/Decorator/JsonCreatorValidate");
|
|
141
|
+
Object.defineProperty(exports, "JsonCreatorValidate", { enumerable: true, get: function () { return JsonCreatorValidate_1.JsonCreatorValidate; } });
|
|
142
|
+
var ControllerManager_1 = require("./WebServer/Engine/ControllerManager");
|
|
143
|
+
Object.defineProperty(exports, "GCtrMgr", { enumerable: true, get: function () { return ControllerManager_1.GCtrMgr; } });
|
|
144
|
+
var Engine_1 = require("./WebServer/Engine/Engine");
|
|
145
|
+
Object.defineProperty(exports, "Engine", { enumerable: true, get: function () { return Engine_1.Engine; } });
|
|
146
|
+
var RazorJs_1 = require("./WebServer/Engine/RazorJs");
|
|
147
|
+
Object.defineProperty(exports, "RazorJs", { enumerable: true, get: function () { return RazorJs_1.RazorJs; } });
|
|
148
|
+
var Request_1 = require("./WebServer/Engine/Request");
|
|
149
|
+
Object.defineProperty(exports, "Request", { enumerable: true, get: function () { return Request_1.Request; } });
|
|
150
|
+
var Response_1 = require("./WebServer/Engine/Response");
|
|
151
|
+
Object.defineProperty(exports, "Response", { enumerable: true, get: function () { return Response_1.Response; } });
|
|
152
|
+
var FrameworkConfig_2 = require("./Config/FrameworkConfig");
|
|
153
|
+
Object.defineProperty(exports, "WebServerConfig", { enumerable: true, get: function () { return FrameworkConfig_2.WebServerConfig; } });
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|