golang数据类型
引用类型,默认值为nil 切片Slice 映射map 函数func 方法(p *P)func 通道channel 指针 默认值为nil pointer 值类型 数组,默认0 bool,默认false int,默认0 string,默认”” float,默认0.0
npm问题整理
npm install 报权限错误,permission denied添加 --unsafe-perm 参数,如 1npm install --unsafe-perm
Goland 不能识别与添加GOROOT解决办法
原因:golang版本大于1.15的时候,Goland在配置的时候可能无法识别到GOROOT 解决方法:修改go安装目录下的go/src/runtime/internal/sys/zversion.go文件: 123456// Code generated by go tool dist; DO NOT EDIT.package sysconst StackGuardMultiplierDefault = 1const theVersion = `go1.19.2` 增加最下面一行,对应的go版本为你实际的版本即可。
HTTP和HTTPS
基本概念超文本传输协议(Hyper Text Transfer Protocol,HTTP)是一个简单的请求-响应协议,http是一个客户端和服务器请求和应答的标准(TCP),用于从WWW服务器传输超文本到本地浏览器的超文本传输协议。HTTPS(全称:Hypertext Transfer Protocol Secure),是以安全为目标的 HTTP 通道,在HTTP的基础上通过传输加密和身份认证保证了传输过程的安全性。 HTTP和HTTPS的区别HTTP是超文本传输协议,信息是明文传输,HTTPS协议比HTTP协议安全,HTTPS是具有安全性的ssl加密传输协议,可以防止数据在传输过程中被窃取和改变。确保数据的相对完整性。HTTP默认端口是80,HTTPS默认端口是443HTTP是无状态的。HTTPS握手阶段比较费时,加载时间会延长30%。HTTPS缓存不如HTTP高效,会增加数据开销。HTTPS基于传输层,HTTP基于应用层;HTTPS在浏览器显示绿色安全锁,HTTP没有显示; https协议的工作原理
面经
call、apply、bind的区别1、fn.call (newThis,params) call函数的第一个参数是this的新指向,后面依次传入函数fn要用到的参数。会立即执行fn函数。2、fn.apply (newThis,paramsArr) apply函数的第一个参数是this的新指向,第二个参数是fn要用到的参数数组,会立即执行fn函数。3、fn.bind (newThis,params) bind函数的第一个参数是this的新指向,后面的参数可以直接传递,也可以按数组的形式传入。 不会立即执行fn函数,且只能改变一次fn函数的指向,后续再用bind更改无效。返回的是已经更改this指向的新fn
测试
<script> window.alert('2131'); window.alert('2131'); window.alert('2131'); window.alert('2131'); window.alert('2131'); window.alert('2131');</script>
laravel8 多用户jwt权限验证并加入白名单机制
一、安装 1composer require tymon/jwt-auth 二、发布配置文件 1php artisan vendor:publish --provider="Tymon\JWTAuth\Providers\LaravelServiceProvider" 三、生成密钥 1php artisan jwt:secret 四、修改config的配置 在config/auth.php中修改: 然后把providers的users模型类改成你的 五、生成中间件 1php artisan make:middleware JWTRoleAuth...
1小时速成laravel接口开发
安装laravel这里选用安装8版本 在项目目录执行 1composer create-project --prefer-dist laravel/laravel=8.* api-test 等待安装好后,进入api-test目录执行: 1php artisan serve 提示 就说明启动项目成功,可以浏览器访问地址。 配置统一化api接口返回格式根据统一化的api接口返回数据。我们先定义统一格式。 success : 程序业务逻辑是否执行成功 code:错误状态码,0为成功,其它错误码自定义 message:返回提示信息 data:数据包,即接口返回的数据 例如: 123456789{ "success":true, "code":0, "message":"查询成功", "data":{ "id":1, "name":"张三" ...
laravel 8 给Api限流器增加白名单
近期遇到laravel 8 中内置的api限流器给某些业务带来了困扰,比如:“程序执行进度”,“文件分块上传”、等等都需要频繁的去请求接口,整体的api单分钟60次并无法满足这些业务。然后尝试给api限流器增加班名单机制: 编辑App\Providers中的 RouteServiceProvider类: 修改configureRateLimiting方法: 12345678910protected function configureRateLimiting() { RateLimiter::for('api', function (Request $request) { $routeName = \Illuminate\Support\Facades\Route::currentRouteName(); if (in_array($routeName, config('throttle.whitelist')) &&...
已装Nginx新增模块
查看当前nginx信息: 1/usr/local/nginx/sbin/nginx -V /usr/local/nginx/sbin/nginx为当前nginx安装目录 得到如下信息: 下载相同版本号的源码:下载链接 解压,cd到源码目录 下载解压要编译的模块源码和nginx源码目录同一目录在nginx源码目录下执行configureconfigure参数包括已安装的参数和你要添加的模块例如 1--prefix=/usr/local/nginx --user=www --group=www --with-http_ssl_module --with-http_stub_status_module --with-http_realip_module --with-http_gzip_static_module --with-pcre=/usr/local/pcre-8.39 configure完成后执行编译 1make make完不要make install 编译后的nginx在当前目录的objs文件夹内。 备份当前的nginx文件: 1cp...