API 增加更多提示

pull/18/head
icret 2022-01-02 20:12:16 +08:00
parent 0f44c2bce8
commit 02d6d5a3f6
8 changed files with 53 additions and 75 deletions

View File

@ -6,7 +6,7 @@
require_once __DIR__ . '/../application/function.php';
require_once APP_ROOT . '/application/header.php';
require_once APP_ROOT . '/config/api_key.php';
require_once APP_ROOT . '/api/application/apiFunction.php';
require_once APP_ROOT . '/api/function_API.php';
if (!is_online()) {
echo '

View File

@ -4,7 +4,7 @@
*/
require_once '../application/header.php';
require_once APP_ROOT . '/config/api_key.php';
require_once APP_ROOT . '/api/application/apiFunction.php';
require_once APP_ROOT . '/api/function_API.php';
require_once APP_ROOT . '/application/chart.php';
// 检测登录

View File

@ -4,7 +4,7 @@
*/
require_once '../application/header.php';
require_once APP_ROOT . '/config/api_key.php';
require_once APP_ROOT . '/api/application/apiFunction.php';
require_once APP_ROOT . '/api/function_API.php';
require_once APP_ROOT . '/application/chart.php';
// 检测登录

View File

@ -1,38 +0,0 @@
<?php
echo '<title> - EasyImage2.0</title>';
require_once '../../application/function.php';
require_once APP_ROOT . '/application/header.php';
require_once APP_ROOT . '/config/api_key.php';
// 如果关闭Api上传并且没有登录的情况下关闭测试接口
if (!$config['apiStatus'] and !is_online()) {
exit('<script>
new $.zui.Messager("Api关闭请登录", {type: "danger" // 定义颜色主题
}).show();
// 延时2s跳转
window.setTimeout("window.location=\'/../application/login.php \'",2000);
</script>');
}
?>
<div class="container">
</div class="row">
<div class="col-md-12">
<h4>测试Token<code><?php echo $tokenList['1']; ?></code></h4>
<form action="../index.php" method="post" enctype="multipart/form-data" class="form-inline" target="_blank">
<div class="form-group">
<input type="file" name="image" accept="image/*" class="form-control" />
</div>
<div class="form-group">
<input type="text" name="token" placeholder="请输入Token" class="form-control" />
</div>
<button type="submit" class="btn btn-primary">上传</button>
</form>
</div>
</div>
</div>
<script>
document.title = "API图片上传测试 - <?php echo $config['title']; ?>";
</script>
<?php require_once APP_ROOT . '/application/footer.php';

View File

@ -13,19 +13,6 @@ function privateToken($length = 32)
return md5($output);
}
// 检查Token
function checkToken($token)
{
global $tokenList;
$token = preg_replace('/[\W]/', '', $token); // 过滤非字母数字,删除空格
if (in_array($token, $tokenList)) {
return True;
} else {
exit('此Token不存在' . $token);
}
}
// 通过Token查找用户ID
function getID($token)
{
@ -51,3 +38,33 @@ function getIDToken($id)
}
}
/**
* 检查是否开启api上传
* code:201 访问成功但是服务端关闭API上传
* code:202 访问成功但是Token错误
*/
function check_api($token)
{
global $config;
global $tokenList;
if (!$config['apiStatus']) {
// API关闭 服务端关闭API上传
$reJson = array(
"result" => 'failed',
'code' => 201,
'message' => 'API Closed',
);
exit(json_encode($reJson, JSON_UNESCAPED_UNICODE));
}
if (!in_array($token, $tokenList)) {
// Token错误 Token错误
$reJson = array(
"result" => 'failed',
'code' => 202,
'message' => 'Token Error',
);
exit(json_encode($reJson, JSON_UNESCAPED_UNICODE));
}
}

View File

@ -1,20 +1,15 @@
<?php
require_once __DIR__ . './../application/function.php';
require_once APP_ROOT . '/api/application/apiFunction.php';
require_once APP_ROOT . '/api/function_API.php';
require_once APP_ROOT . '/application/class.upload.php';
require_once APP_ROOT . '/application/WaterMask.php';
require_once APP_ROOT . '/config/api_key.php';
// 检查是否开启api上传
if ($config['apiStatus']) {
header('Access-Control-Allow-Origin:*');
} else {
exit('API closed');
}
header('Access-Control-Allow-Origin:*');
$token = preg_replace('/[\W]/', '', $_POST['token']); // 获取Token并过滤非字母数字删除空格;
// 检查api合法性
checkToken($_POST['token']);
$token = $_POST['token'];
check_api($token);
$handle = new Upload($_FILES['image'], 'zh_CN');
@ -91,20 +86,25 @@ if ($handle->uploaded) {
$delUrl = $config['domain'] . '/application/del.php?hash=' . urlHash(config_path() . $handle->file_dst_name, 0);
$reJson = array(
"result" => 'success',
"result" => "success",
"code" => 200,
"url" => $imageUrl,
"del" => $delUrl,
);
echo json_encode($reJson);
echo json_encode($reJson,JSON_UNESCAPED_UNICODE);
$handle->clean();
} else {
// 上传错误 返回错误信息
// 上传错误 code:403 客户端文件有问题
$reJson = array(
"result" => 'failed',
"result" => "failed",
"code" => 403,
"message" => $handle->error,
"log" => $handle->log,
//"log" => $handle->log,
);
echo json_encode($reJson, JSON_UNESCAPED_UNICODE);
unset($handle);
header('Content-Type:application/json; charset=utf-8');
exit(json_encode($reJson, JSON_UNESCAPED_UNICODE));
}
// 上传日志控制

View File

@ -65,7 +65,6 @@
<!-- 对话框触发按钮 -->
<a href="#" data-position="center" data-moveable="inside" data-moveable="true" data-toggle="modal" data-target="#myModal">
<i class="icon icon-qrcode"></i>二维码 </a>
<a href="<?php echo $config['domain']; ?>/api/apiTest/" target="_blank"><i class="icon icon-key"></i>API </a>
<?php
if (is_online()) {
echo '<a href="' . $config['domain'] . '/application/logout.php" ><i class="icon icon-signout"></i>退出 </a>';

View File

@ -23,7 +23,7 @@ $config=Array
'waterImg'=>'/public/images/watermark.png',
'extensions'=>'bmp,jpg,png,tif,gif,pcx,tga,svg,webp,jpeg,tga,svg,ico',
'compress'=>0,
'thumbnail'=>0,
'thumbnail'=>1,
'imgConvert'=>'',
'maxWidth'=>10240,
'maxHeight'=>10240,