后盾网lavarel视频项目---3、lavarel中子控制器继承父控制器以判断是否登录
2024-08-22 04:50:00
后盾网lavarel视频项目---3、lavarel中子控制器继承父控制器以判断是否登录
一、总结
一句话总结:
在common控制器的构造方法中验证登录中间件,其它的控制器继承common控制器
public function __construct()
{
//验证用户是否登录
$this->middleware('admin.auth');
}
1、jquery自动传递csrf的token字段?
在页头创建csrf-token的meta标签,在页尾用ajaxSetup设置token的值
X-CSRF-TOKEN
除了检查 POST 参数中的 CSRF 令牌外, VerifyCsrfToken 中间件还会检查 X-CSRF-TOKEN 请求头。你应该将令牌保存在 HTML meta 标签中,如下: <meta name="csrf-token" content="{{ csrf_token() }}">
然后,一旦你创建了 meta 标签,就可以指示像 jQuery 这样的库自动将令牌添加到所有请求的头信息中。还可以为基于 AJAX 的应用提供简单、方便的 CSRF 保护。如下: $.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});
{tip} 默认情况下,resources/assets/js/bootstrap.js 文件会用 Axios HTTP 函数库注册 csrf-token meta 标签中的值。如果不使用这个函数库,则需要为你的应用手动配置此行为。
2、控制器中返回json数据?
return response()->json(['message'=>'刪除成功','valid'=>1]);
3、composer dumpautoload命令作用?
删除了类,有记录,需要更新:比如php artisan创建的时候名字写错了,要删了重新来
4、撤销数据迁移?
php artisan migrate:rollback:也就是执行数据迁移里面的down方法,删除表
php artisan migrate
5、视频网站的视频存到哪里?
阿里云oss服务,按需付费,方便划算
6、数据库的表的字段还是可以照我那样加前缀,可以省很多事和不必要的错误?
因为重复字段比如id在连表的时候不注意很容易有错误,而且不好排查
7、解决ajax跨域访问?
默认情况下前台发送Ajax是允许跨域请求的。我们可以在后台进行相关设置然后允许前台跨域请求。
允许单个域名访问 header('Access-Control-Allow-Origin:http://www.houdunwang.com');
允许多个域名 $origin = isset($_SERVER['HTTP_ORIGIN'])? $_SERVER['HTTP_ORIGIN'] : ''; $allow_origin = array( 'http://www.houdunren.com', 'http://www.houdunwang.com' ); if(in_array($origin, $allow_origin)){ header('Access-Control-Allow-Origin:'.$origin); }
允许所有域名请求 header('Access-Control-Allow-Origin:*');
8、后盾人项目代码怎么找?
直接github上面搜索后盾人即可:https://github.com/houdunwang
9、后盾js配置?
可以去github上面找项目,也可以直接官网找配置,不过这个js用的人太少,文档也非常有问题
github位置:https://github.com/houdunwang/hdjs
配置位置:http://houdunren.gitee.io/note/hdjs/1%20%E5%9F%BA%E7%A1%80%E7%9F%A5%E8%AF%86.html#%E4%BD%BF%E7%94%A8%E8%87%AA%E5%AE%9A%E4%B9%89%E7%BB%84%E4%BB%B6
<script>
//HDJS组件需要的配置
window.hdjs={
//组件目录必须绝对路径
base : '/node_modules/hdjs',
//上传文件后台地址
uploader : '/uploader.php?',
//获取文件列表的后台地址
filesLists : '/filesLists.php?',
//require.js配置项(可为空)
requireJs:{paths:{},shim:{}},
};
</script>
<script src="/node_modules/hdjs/require.js"></script>
<script src="/node_modules/hdjs/config.js"></script>
10、后盾js一直引一直失败的原因是什么?
我把后盾js放到了页面bottom里面,而使用在页面中间,使用又没有放到页面加载完全函数里面
二、内容在总结中
1、lavarel中子控制器继承父控制器以判断是否登录
app/Http/Controllers/Admin/CommonController.php
<?php namespace App\Http\Controllers\Admin; use Illuminate\Http\Request;
use App\Http\Controllers\Controller; abstract class CommonController extends Controller
{
public function __construct()
{
//验证用户是否登录
$this->middleware('admin.auth');
} /**
* 成功信息
* @param $message
* @return \Illuminate\Http\JsonResponse
*/
protected function success($message){
//这样返回信息的时候只用返回$this->success('成功')
return response()->json(['message'=>$message,'valid'=>1]);
} /**
* 错误信息
* @param $message
* @return \Illuminate\Http\JsonResponse
*/
protected function error($message){
return response()->json(['message'=>$message,'valid'=>0]);
} }
在common控制器的构造方法中验证登录中间件,其它的控制器继承common控制器
比如
class TagController extends CommonController
2、
最新文章
- Attribute操作的性能优化方式
- SCRUM 流程的步骤2: Spring 计划
- 理论基础知识之————KB Kb Kbps 相关单位的区别和换算
- BI 项目管理之角色和职责
- glReadPixels函数
- codevs 3012 线段覆盖 4 &; 3037 线段覆盖 5
- Python 主要模块和常用方法简览
- [Bootstrap]全局样式(二)
- inux关于readlink函数获取运行路径的小程序
- Apache配置虚拟文件夹
- FPGA开机状态
- POJ 1118 Lining Up
- 我的学习之路_第二十八章_JQuery 和validator插件
- 联想G50-70安装SSD及WIN10教程
- mysql+mybatis递归调用
- 腾讯云服务器上安装phstudy和lnmp
- equals()与hashCode()方法协作约定
- stm32之CMSIS标准、库目录、GPIO
- L0/L1/L2范数(转载)
- 068 Oozie任务调度框架