1、文件上传验证
2、增加图片上传配置 2、接口功能优化
This commit is contained in:
@@ -1,10 +1,12 @@
|
|||||||
<?php
|
<?php
|
||||||
namespace app\api\controller;
|
namespace app\api\controller;
|
||||||
|
|
||||||
class Index
|
class Index extends \app\common\controller\Api {
|
||||||
{
|
|
||||||
public function index()
|
public $mustToken = true;
|
||||||
{
|
|
||||||
return '<style type="text/css">*{ padding: 0; margin: 0; } div{ padding: 4px 48px;} a{color:#2E5CD5;cursor: pointer;text-decoration: none} a:hover{text-decoration:underline; } body{ background: #fff; font-family: "Century Gothic","Microsoft yahei"; color: #333;font-size:18px;} h1{ font-size: 100px; font-weight: normal; margin-bottom: 12px; } p{ line-height: 1.6em; font-size: 42px }</style><div style="padding: 24px 48px;"> <h1>:)</h1><p> ThinkPHP V5<br/><span style="font-size:30px">十年磨一剑 - 为API开发设计的高性能框架</span></p><span style="font-size:22px;">[ V5.0 版本由 <a href="http://www.qiniu.com" target="qiniu">七牛云</a> 独家赞助发布 ]</span></div><script type="text/javascript" src="http://tajs.qq.com/stats?sId=9347272" charset="UTF-8"></script><script type="text/javascript" src="http://ad.topthink.com/Public/static/client.js"></script><thinkad id="ad_bd568ce7058a1091"></thinkad>';
|
public function usercount(){
|
||||||
}
|
$this->data['data'] = array('team_num'=>100,'coustomer_num'=>10000);
|
||||||
}
|
return $this->data;
|
||||||
|
}
|
||||||
|
}
|
||||||
36
application/api/controller/Wechat.php
Normal file
36
application/api/controller/Wechat.php
Normal file
@@ -0,0 +1,36 @@
|
|||||||
|
<?php
|
||||||
|
namespace app\api\controller;
|
||||||
|
|
||||||
|
use EasyWeChat\Factory;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 微信类接口
|
||||||
|
*/
|
||||||
|
class Wechat extends \app\common\controller\Api{
|
||||||
|
|
||||||
|
public function onLogin() {
|
||||||
|
$app = Factory::miniProgram(array(
|
||||||
|
'app_id' => 'wxbcf7b64b8dc6ca72',
|
||||||
|
'secret' => '01f8b10956ea44e6a726f1391af6e3d8',
|
||||||
|
));
|
||||||
|
|
||||||
|
$info = $app->auth->session($this->request->param('code'));
|
||||||
|
|
||||||
|
$this->data['data'] = $info;
|
||||||
|
|
||||||
|
return json($this->data);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function jscode2session(){
|
||||||
|
$app = Factory::miniProgram(array(
|
||||||
|
'app_id' => 'wxbcf7b64b8dc6ca72',
|
||||||
|
'secret' => '01f8b10956ea44e6a726f1391af6e3d8',
|
||||||
|
));
|
||||||
|
|
||||||
|
$info = $app->auth->session($this->request->param('jsCode'));
|
||||||
|
|
||||||
|
$this->data['data'] = $info;
|
||||||
|
|
||||||
|
return json($this->data);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -46,7 +46,7 @@ class Api {
|
|||||||
return $this->data;
|
return $this->data;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected function checkAuthor($header){return true;
|
protected function checkAuthor($header){
|
||||||
if (isset($header['authorization']) && $header['authorization']) {
|
if (isset($header['authorization']) && $header['authorization']) {
|
||||||
list($appid, $sign) = explode('{|}', $header['authorization']);
|
list($appid, $sign) = explode('{|}', $header['authorization']);
|
||||||
$this->client = db('Client')->where('appid', $appid)->find();
|
$this->client = db('Client')->where('appid', $appid)->find();
|
||||||
|
|||||||
@@ -19,7 +19,10 @@ class Upload {
|
|||||||
$config = $this->$upload_type();
|
$config = $this->$upload_type();
|
||||||
// 获取表单上传文件 例如上传了001.jpg
|
// 获取表单上传文件 例如上传了001.jpg
|
||||||
$file = request()->file('file');
|
$file = request()->file('file');
|
||||||
$info = $file->move($config['rootPath'], true, false);
|
$info = $file->validate(array(
|
||||||
|
'size' => $config['size'],
|
||||||
|
'ext' => $config['ext'],
|
||||||
|
))->move($config['rootPath'], true, false);
|
||||||
|
|
||||||
if ($info) {
|
if ($info) {
|
||||||
$return['status'] = 1;
|
$return['status'] = 1;
|
||||||
@@ -155,7 +158,7 @@ class Upload {
|
|||||||
$data['m_time'] = $info->getMTime(); //获取最后修改时间
|
$data['m_time'] = $info->getMTime(); //获取最后修改时间
|
||||||
$data['owner'] = $info->getOwner(); //文件拥有者
|
$data['owner'] = $info->getOwner(); //文件拥有者
|
||||||
$data['savepath'] = $info->getPath(); //不带文件名的文件路径
|
$data['savepath'] = $info->getPath(); //不带文件名的文件路径
|
||||||
$data['url'] = $data['path'] = str_replace("\\", '/', substr($info->getPathname(), 1)); //全路径
|
$data['url'] = $data['path'] = '/uploads/' . $info->getSaveName(); //全路径
|
||||||
$data['size'] = $info->getSize(); //文件大小,单位字节
|
$data['size'] = $info->getSize(); //文件大小,单位字节
|
||||||
$data['is_file'] = $info->isFile(); //是否是文件
|
$data['is_file'] = $info->isFile(); //是否是文件
|
||||||
$data['is_execut'] = $info->isExecutable(); //是否可执行
|
$data['is_execut'] = $info->isExecutable(); //是否可执行
|
||||||
|
|||||||
@@ -16,126 +16,12 @@ return [
|
|||||||
|
|
||||||
// 应用调试模式
|
// 应用调试模式
|
||||||
'app_debug' => true,
|
'app_debug' => true,
|
||||||
// 应用Trace
|
|
||||||
'app_trace' => false,
|
|
||||||
// 应用模式状态
|
|
||||||
'app_status' => '',
|
|
||||||
// 是否支持多模块
|
|
||||||
'app_multi_module' => true,
|
|
||||||
// 入口自动绑定模块
|
|
||||||
'auto_bind_module' => false,
|
|
||||||
// 注册的根命名空间
|
|
||||||
'root_namespace' => [],
|
|
||||||
// 扩展函数文件
|
|
||||||
'extra_file_list' => [THINK_PATH . 'helper' . EXT],
|
|
||||||
// 默认输出类型
|
|
||||||
'default_return_type' => 'html',
|
|
||||||
// 默认AJAX 数据返回格式,可选json xml ...
|
|
||||||
'default_ajax_return' => 'json',
|
|
||||||
// 默认JSONP格式返回的处理方法
|
|
||||||
'default_jsonp_handler' => 'jsonpReturn',
|
|
||||||
// 默认JSONP处理方法
|
|
||||||
'var_jsonp_handler' => 'callback',
|
|
||||||
// 默认时区
|
|
||||||
'default_timezone' => 'PRC',
|
|
||||||
// 是否开启多语言
|
|
||||||
'lang_switch_on' => false,
|
|
||||||
// 默认全局过滤方法 用逗号分隔多个
|
|
||||||
'default_filter' => '',
|
|
||||||
// 默认语言
|
|
||||||
'default_lang' => 'zh-cn',
|
|
||||||
// 应用类库后缀
|
|
||||||
'class_suffix' => false,
|
|
||||||
// 控制器类后缀
|
|
||||||
'controller_suffix' => false,
|
|
||||||
|
|
||||||
// +----------------------------------------------------------------------
|
|
||||||
// | 模块设置
|
|
||||||
// +----------------------------------------------------------------------
|
|
||||||
|
|
||||||
// 默认模块名
|
|
||||||
'default_module' => 'index',
|
|
||||||
// 禁止访问模块
|
|
||||||
'deny_module_list' => ['common'],
|
|
||||||
// 默认控制器名
|
|
||||||
'default_controller' => 'Index',
|
|
||||||
// 默认操作名
|
|
||||||
'default_action' => 'index',
|
|
||||||
// 默认验证器
|
|
||||||
'default_validate' => '',
|
|
||||||
// 默认的空控制器名
|
|
||||||
'empty_controller' => 'Error',
|
|
||||||
// 操作方法后缀
|
|
||||||
'action_suffix' => '',
|
|
||||||
// 自动搜索控制器
|
|
||||||
'controller_auto_search' => false,
|
|
||||||
|
|
||||||
// +----------------------------------------------------------------------
|
|
||||||
// | URL设置
|
|
||||||
// +----------------------------------------------------------------------
|
|
||||||
|
|
||||||
// PATHINFO变量名 用于兼容模式
|
|
||||||
'var_pathinfo' => 's',
|
|
||||||
// 兼容PATH_INFO获取
|
|
||||||
'pathinfo_fetch' => ['ORIG_PATH_INFO', 'REDIRECT_PATH_INFO', 'REDIRECT_URL'],
|
|
||||||
// pathinfo分隔符
|
|
||||||
'pathinfo_depr' => '/',
|
|
||||||
// URL伪静态后缀
|
|
||||||
'url_html_suffix' => 'html',
|
|
||||||
// URL普通方式参数 用于自动生成
|
|
||||||
'url_common_param' => false,
|
|
||||||
// URL参数方式 0 按名称成对解析 1 按顺序解析
|
|
||||||
'url_param_type' => 0,
|
|
||||||
// 是否开启路由
|
|
||||||
'url_route_on' => true,
|
|
||||||
// 路由使用完整匹配
|
|
||||||
'route_complete_match' => false,
|
|
||||||
// 路由配置文件(支持配置多个)
|
|
||||||
'route_config_file' => ['route'],
|
|
||||||
// 是否强制使用路由
|
|
||||||
'url_route_must' => false,
|
|
||||||
// 域名部署
|
|
||||||
'url_domain_deploy' => false,
|
|
||||||
// 域名根,如thinkphp.cn
|
|
||||||
'url_domain_root' => '',
|
|
||||||
// 是否自动转换URL中的控制器和操作名
|
|
||||||
'url_convert' => true,
|
|
||||||
// 默认的访问控制器层
|
|
||||||
'url_controller_layer' => 'controller',
|
|
||||||
// 表单请求类型伪装变量
|
|
||||||
'var_method' => '_method',
|
|
||||||
// 表单ajax伪装变量
|
|
||||||
'var_ajax' => '_ajax',
|
|
||||||
// 表单pjax伪装变量
|
|
||||||
'var_pjax' => '_pjax',
|
|
||||||
// 是否开启请求缓存 true自动缓存 支持设置请求缓存规则
|
|
||||||
'request_cache' => false,
|
|
||||||
// 请求缓存有效期
|
|
||||||
'request_cache_expire' => null,
|
|
||||||
// 全局请求缓存排除规则
|
|
||||||
'request_cache_except' => [],
|
|
||||||
|
|
||||||
// +----------------------------------------------------------------------
|
// +----------------------------------------------------------------------
|
||||||
// | 模板设置
|
// | 模板设置
|
||||||
// +----------------------------------------------------------------------
|
// +----------------------------------------------------------------------
|
||||||
|
|
||||||
'template' => [
|
'template' => [
|
||||||
// 模板引擎类型 支持 php think 支持扩展
|
|
||||||
'type' => 'Think',
|
|
||||||
// 模板路径
|
|
||||||
'view_path' => '',
|
|
||||||
// 模板后缀
|
|
||||||
'view_suffix' => 'html',
|
|
||||||
// 模板文件名分隔符
|
|
||||||
'view_depr' => DS,
|
|
||||||
// 模板引擎普通标签开始标记
|
|
||||||
'tpl_begin' => '{',
|
|
||||||
// 模板引擎普通标签结束标记
|
|
||||||
'tpl_end' => '}',
|
|
||||||
// 标签库标签开始标记
|
|
||||||
'taglib_begin' => '{',
|
|
||||||
// 标签库标签结束标记
|
|
||||||
'taglib_end' => '}',
|
|
||||||
'taglib_build_in' => 'cx,com\Sent',
|
'taglib_build_in' => 'cx,com\Sent',
|
||||||
],
|
],
|
||||||
|
|
||||||
@@ -150,56 +36,6 @@ return [
|
|||||||
'dispatch_success_tmpl' => THINK_PATH . 'tpl' . DS . 'dispatch_jump.tpl',
|
'dispatch_success_tmpl' => THINK_PATH . 'tpl' . DS . 'dispatch_jump.tpl',
|
||||||
'dispatch_error_tmpl' => THINK_PATH . 'tpl' . DS . 'dispatch_jump.tpl',
|
'dispatch_error_tmpl' => THINK_PATH . 'tpl' . DS . 'dispatch_jump.tpl',
|
||||||
|
|
||||||
// +----------------------------------------------------------------------
|
|
||||||
// | 异常及错误设置
|
|
||||||
// +----------------------------------------------------------------------
|
|
||||||
|
|
||||||
// 异常页面的模板文件
|
|
||||||
'exception_tmpl' => THINK_PATH . 'tpl' . DS . 'think_exception.tpl',
|
|
||||||
|
|
||||||
// 错误显示信息,非调试模式有效
|
|
||||||
'error_message' => '页面错误!请稍后再试~',
|
|
||||||
// 显示错误信息
|
|
||||||
'show_error_msg' => false,
|
|
||||||
// 异常处理handle类 留空使用 \think\exception\Handle
|
|
||||||
'exception_handle' => '',
|
|
||||||
|
|
||||||
// +----------------------------------------------------------------------
|
|
||||||
// | 日志设置
|
|
||||||
// +----------------------------------------------------------------------
|
|
||||||
|
|
||||||
'log' => [
|
|
||||||
// 日志记录方式,内置 file socket 支持扩展
|
|
||||||
'type' => 'File',
|
|
||||||
// 日志保存目录
|
|
||||||
'path' => LOG_PATH,
|
|
||||||
// 日志记录级别
|
|
||||||
'level' => [],
|
|
||||||
],
|
|
||||||
|
|
||||||
// +----------------------------------------------------------------------
|
|
||||||
// | Trace设置 开启 app_trace 后 有效
|
|
||||||
// +----------------------------------------------------------------------
|
|
||||||
'trace' => [
|
|
||||||
// 内置Html Console 支持扩展
|
|
||||||
'type' => 'Html',
|
|
||||||
],
|
|
||||||
|
|
||||||
// +----------------------------------------------------------------------
|
|
||||||
// | 缓存设置
|
|
||||||
// +----------------------------------------------------------------------
|
|
||||||
|
|
||||||
'cache' => [
|
|
||||||
// 驱动方式
|
|
||||||
'type' => 'File',
|
|
||||||
// 缓存保存目录
|
|
||||||
'path' => CACHE_PATH,
|
|
||||||
// 缓存前缀
|
|
||||||
'prefix' => '',
|
|
||||||
// 缓存有效期 0表示永久缓存
|
|
||||||
'expire' => 0,
|
|
||||||
],
|
|
||||||
|
|
||||||
// +----------------------------------------------------------------------
|
// +----------------------------------------------------------------------
|
||||||
// | 会话设置
|
// | 会话设置
|
||||||
// +----------------------------------------------------------------------
|
// +----------------------------------------------------------------------
|
||||||
@@ -216,30 +52,28 @@ return [
|
|||||||
'auto_start' => true,
|
'auto_start' => true,
|
||||||
],
|
],
|
||||||
|
|
||||||
// +----------------------------------------------------------------------
|
|
||||||
// | Cookie设置
|
|
||||||
// +----------------------------------------------------------------------
|
|
||||||
'cookie' => [
|
|
||||||
// cookie 名称前缀
|
|
||||||
'prefix' => '',
|
|
||||||
// cookie 保存时间
|
|
||||||
'expire' => 0,
|
|
||||||
// cookie 保存路径
|
|
||||||
'path' => '/',
|
|
||||||
// cookie 有效域名
|
|
||||||
'domain' => '',
|
|
||||||
// cookie 启用安全传输
|
|
||||||
'secure' => false,
|
|
||||||
// httponly设置
|
|
||||||
'httponly' => '',
|
|
||||||
// 是否使用 setcookie
|
|
||||||
'setcookie' => true,
|
|
||||||
],
|
|
||||||
|
|
||||||
//分页配置
|
//分页配置
|
||||||
'paginate' => [
|
'paginate' => [
|
||||||
'type' => 'bootstrap',
|
'type' => 'bootstrap',
|
||||||
'var_page' => 'page',
|
'var_page' => 'page',
|
||||||
'list_rows' => 15,
|
'list_rows' => 15,
|
||||||
],
|
],
|
||||||
|
|
||||||
|
'picture_upload' => [
|
||||||
|
'rootPath' => ROOT_PATH . DS .'/web/uploads/',
|
||||||
|
'size' => '204800',
|
||||||
|
'ext' => 'jpg,png,gif'
|
||||||
|
],
|
||||||
|
|
||||||
|
'attachment_upload' => [
|
||||||
|
'rootPath' => ROOT_PATH . DS .'/web/uploads/',
|
||||||
|
'size' => '204800',
|
||||||
|
'ext' => 'doc,docx,xls,xlsx,ppt,pptx,zip,rar'
|
||||||
|
],
|
||||||
|
|
||||||
|
'picture_upload' => [
|
||||||
|
'rootPath' => ROOT_PATH . DS .'/web/uploads/',
|
||||||
|
'size' => '204800',
|
||||||
|
'ext' => 'jpg,png,gif'
|
||||||
|
],
|
||||||
];
|
];
|
||||||
|
|||||||
Reference in New Issue
Block a user