-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathapi.php
48 lines (41 loc) · 1.02 KB
/
api.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
<?php
/**
* 通用API入口文件
*
* @author Gavin<[email protected]>
*/
if (!isset($_GET['q']) || empty($_GET['q'])) {
$_GET['q'] = 'weixin/edmbuy';
}
//~ require init.php
require (__DIR__.'/core/init.php');
ignore_user_abort(TRUE);
set_time_limit(60);
$request = new Request();
$response = new Response();
//记录日志
$apilog = new ApiLog();
$apilog->reqTime = simphp_msec();
$request->__apilog = $apilog;
$ret = ['code' => -1, 'msg' => Api::code(-1), 'res' => []];
try {
SimPHP::I(['modroot'=>'apis'])
->boot(RC_DATABASE)
->dispatch($request,$response);
}
catch (ApiException $eapi) {
$ret['code'] = $eapi->getCode();
$ret['code'] = intval($ret['code']);
$ret['msg'] = $eapi->getMessage();
$ret['res'] = $eapi->getResponse();
}
catch (Exception $e) {
$ret['code'] = 1503;
$ret['msg'] = Api::code($ret['code']);
}
//保存日志
$apilog->dealTime = simphp_msec() - $apilog->reqTime;
$apilog->resp = json_encode($ret);
$apilog->save();
$response->sendJSON($ret);
/*----- END FILE: api.php -----*/