Tools.php
4.34 KB
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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
<?php
use Action\WebAction;
use WebPlugin\Cache;
use Configs\WebCacheConfig;
use WebPlugin\AuthCode;
use Index\HomeModel;
use Api\Yohobuy;
use Api\Sign;
use LibModels\Web\Home\IndexData;
class ToolsController extends WebAction
{
public function init()
{
if(APPLICATION_ENV == 'production') {
$valid_passwords = array ('yoho' => '9646abcdef');
} else {
$valid_passwords = array ('test' => '123456');
}
$valid_users = array_keys($valid_passwords);
$user = $pass = '';
if(isset($_SERVER['PHP_AUTH_USER']) && isset($_SERVER['PHP_AUTH_USER']))
{
$user = $_SERVER['PHP_AUTH_USER'];
$pass = $_SERVER['PHP_AUTH_PW'];
}
$validated = (in_array($user, $valid_users)) && ($pass == $valid_passwords[$user]);
if (!$validated) {
header('WWW-Authenticate: Basic realm="www.yohobuy.com"');
header('HTTP/1.0 401 Unauthorized');
die ("Not authorized");
}
}
/**
* 工具首页
*/
public function indexAction()
{
$html = '<br/><h2>工具首页</h2><br/>';
$channels = array('JAVA API'=>'/tools/javaapi', '缓存页面' =>'/tools/cache');
foreach($channels as $name => $url) {
$html .= sprintf('<li style="font-size:18px;"><a href="%s" target="_blank">%s</a></li>',$url, $name);
}
echo $html;
}
/**
* java api测试
*
*/
public function javaapiAction()
{
$html = '<br/><h3>java api测试</h3><br/>';
$channels = array('获取资源位'=> $this->getResourceUrl(), '获取最新上架' =>'');
foreach($channels as $name => $url) {
$html .= sprintf('<li style="font-size:18px;"><a href="%s" target="_blank">%s</a></li>',$url, $name);
}
echo $html;
}
/**
* 获取资源位地址
*
* @return string
*/
private function getResourceUrl()
{
$client_type ='web';
$content_code = '0c911d3000f52e8ca7cffb74f5864c29';
$params = Yohobuy::param();
$params['content_code'] = $content_code;
$params['client_type'] = $client_type;
$params['private_key'] = Yohobuy::$privateKeyList[$client_type];
$params['client_secret'] = Sign::getSign($params);
return Yohobuy::httpBuildQuery(Yohobuy::SERVICE_URL.IndexData::URL_OPERATIONS_RESOURCE_GET, $params);
}
/**
* 缓存html
*/
public function cacheAction()
{
//频道=>key
$channels = array(
'导航' => WebCacheConfig::KEY_WEB_HOME_NAVBAR_DATA,
'男生首页'=> WebCacheConfig::KEY_WEB_HOME_CHANNEL_DATA.'_'.HomeModel::CODE_BOYS_CHANNEL,
'女生首页'=> WebCacheConfig::KEY_WEB_HOME_CHANNEL_DATA.'_'.HomeModel::CODE_GIRLS_CHANNEL,
'kids首页'=> WebCacheConfig::KEY_WEB_HOME_CHANNEL_DATA.'_'.HomeModel::CODE_KIDS_CHANNEL,
'lifestyle首页'=> WebCacheConfig::KEY_WEB_HOME_CHANNEL_DATA.'_'.HomeModel::CODE_LIFESTYLE_CHANNEL,
);
$html = '<br/><h3>缓存页面</h3><br/>';
foreach ($channels as $key => $val) {
$url = '/tools/cacheclear?key='.urlencode(AuthCode::encode($val, 'yohobuy'));
$html.= sprintf('<li><a href="%s" target="_blank">清除%s缓存</a></li>',$url, $key);
}
echo $html;
}
/**
* 清除缓存
*
* @return json
*/
public function cacheclearAction()
{
$key = $this->get('key');
if(!empty($key)) {
$key = AuthCode::decode($key, 'yohobuy');
if(!empty($key)) {
//导航清除
if($key == WebCacheConfig::KEY_WEB_HOME_NAVBAR_DATA) {
$list = array(HomeModel::COOKIE_NAME_BOYS, HomeModel::COOKIE_NAME_GIRLS, HomeModel::COOKIE_NAME_KIDS, HomeModel::COOKIE_NAME_LIFESTYLE);
foreach ($list as $val) {
Cache::delete($key.'_'.$val);
}
} else {
Cache::delete($key);
}
echo '清除成功';
}
}
}
public function logAction()
{
print_r($_SERVER);
}
}
?>