TLingC's Zone
TLingC's Zone

开发
文章归档

微信小程序视频无法播放的分析和解决

近期在做小程序视频项目,发现同一视频在ios中一直处于黑屏转圈圈的加载状态,但在安卓和浏览器下播放却正常。 经过排查后,发现是在拼接视频链接时多添加了/导致的,其它端可以自动处理多加的/,但ios无法正常解析地址。 https://test.com//1.mp4 修改为 https://test.com/1.mp4 即可。

10   2020-11-30  

ubuntu snapd进程持续写入硬盘的处理

近期在新装ubuntu server 20.04后,发现一开机就会一直写入数据到硬盘,写入量不大但一直持续,硬盘平均响应时间也达到了1000多毫秒,造成了系统有一定程度上的卡顿。 在ubuntu下运行iotop命令,发现是snapd进程在持续写入,由于我不需要使用Snap,因此尝试直接卸载。 apt purge snapd 卸载完成后,写入恢复正常。 类似问题:https://forum.ubuntu.org.cn/viewtopic.php?t=491212

10   2020-11-30  

使用Coding持续集成部署微信小程序

微信发布了独立的 miniprogram-ci 小程序编译模块,可以通过node脚本或者命令行直接操作代码上传及预览,而不再需要使用完整的微信开发者工具。 这篇文章讲述如何使用 Coding 的持续集成上传小程序代码,同时也兼容Jenkins或者基于Jenkins的持续集成系统。 首先到小程序后台,开发→开发设置→小程序代码上传获取密钥,由于 Coding 的构建节点出口IP一般不固定,因此需要关闭“IP白名单”。 获取到密钥后,到 Coding 的项目设置→开发者选项→凭据管理,凭据类型选择SSH私钥,然后填入…

457   2020-05-08  

ThinkPHP 6 阿里云日志服务日志驱动

think-aliyunsls ThinkPHP 6 阿里云日志服务日志驱动 安装 composer require tlingc/think-aliyunsls 配置 config/log.php // 默认日志记录通道 'default' => 'aliyunsls', // 日志通道列表 'channels' => [ 'aliyunsls' => [ // 日志记录方式 'type' => 'Aliyunsls', // 阿里云 endpoint 'endpoint' => 'http://cn-beijing.sls.aliyuncs.com/', // 阿里云 AccessKey ID 'access_key_id' …

716   2020-03-16  

腾讯云 ThinkPHP Serverless Component

由 官方维护的ThinkPHP Component 已发布,可使用官方版。 由于官方对静态资源处理采用扩展名枚举实现,暂无法满足我的业务需求,故本仓库还会维护一段时间。如果官方版已经能够满足你的需求,建议使用官方版。 简介 腾讯云 ThinkPHP Serverless Component。 本项目基于 tencent-laravel 修改,以支持运行 ThinkPHP,同时优化了对静态资源的兼容性。 目录 准备 安装 配置 部署 移除 0. 准备 初始化 ThinkPHP 项目 在使用此组件之前,你需要先自己初始化一个 thinkphp …

425   2020-03-08  

Docker 19.03 设置Docker Hub镜像地址

在 Docker 19.03 中,通过修改/etc/default/docker文件: DOCKER_OPTS="--registry-mirror=https://docker.mirrors.ustc.edu.cn" 的方法已经不再可用,修改后仍然会使用 Docker Hub 自己的地址,并没有使用自己设置的镜像地址。 在本版本中可以通过/etc/docker/daemon.json实现镜像地址的修改,如果没有此文件,可以新建一个,文件内容为: { "registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"] } 然后重启 Docker 服务: service docker restart 最后运行dock…

951   2020-03-07  

使用Jenkins持续集成部署QQ小程序

QQ小程序提供了Docker镜像来对小程序项目进行CI构建(文档)。文档中提供的Github Actions及Drone CI两种CI工具都对Docker的相关操作进行了深度集成,以至于不需要调用docker自身的命令。 而改写成Jenkinsfile也很简单,在检出代码后,只需要先拉取镜像然后运行即可。 操作步骤 在QQ小程序后台获取AppToken,然后赋值到环境变量PLUGIN_APPTOKEN。 在检出代码后,新建一个拉取镜像的stage,拉取镜像。 stage('拉取镜像') { steps { sh 'docker pull qqminiapp/build:la…

572   2020-02-08  

让ThinkPHP 6.0语言包支持多级分组

最近在做一个多语言网站项目,需要给一个多级导航栏编写语言包。虽然ThinkPHP 6.0多语言功能引入了语言分组,但其分组最深只能支持两层,在如我的这种情况下无法满足需要。 可通过修改框架src/think/Lang.php来实现多层级的支持。 在src/think/Lang.php中,替换对应方法: public function has(string $name, string $range = ''): bool { $range = $range ?: $this->range; if ($this->config['allow_group'] && strpos($name, '.')) { $names = e…

428   2020-02-05  

ThinkPHP 6.0 多语言优化扩展包

think-lang ThinkPHP 6.0 多语言优化扩展包 特色 支持通过如 mywebsite.com/zh-hans/ 的二级目录访问对应语言页面。 支持每种语言的语言包单独成目录,目录下可设有二级目录。 安装 composer require tlingc/think-lang 使用 基础配置 请参照 官方文档 进行相关配置。同时注意如下与官方文档的不同点。 开启和加载语言包 中间件名称为: 'tlingc\lang\middleware\LoadLangPack', 由于多语言通过二级目录访问,使用Cookie保存语言 功能无效。 语言文件定义 自…

849   2020-02-04  

ThinkPHP 6 多模型下事务处理

mysql下,事务不是针对某个特定的表或者特定的模型的,因此在多模型的情况下,不需要针对每个模型分别startTrans、commit和rollback。即使模型中有继承startTrans方法,可以通过Model::startTrans();启动事务,但其作用等同于Db:startTrans();。因此可以直接写为以下形式。 通过测试,在出现异常时,通过图中自增值可看出(自增值在rollback时也会增加),三个模型尝试新增数据都被rollback。同时把Table3中的name字段改为test233的操作也没有成功。 <?php namespace app\cont…

870   2020-01-20  

小程序云开发 - 二维码生成工具

wxcloud-qrcode-generator 小程序云开发 - 二维码生成工具 实现 根据前端传递到需要生成的内容,生成二维码后上传至云存储,返回对应文件的URL。 二维码生成使用了qrcode库,可参考:https://www.npmjs.com/package/qrcode 使用 wx.showLoading() wx.cloud.callFunction({ name: 'qrcode_generator', data: { text: '需要生成的文字内容' }, complete: res => { wx.hideLoading() wx.previewImage({ urls: [res.result], }) }, fail: err…

507   2019-12-14  

https://tlingc.com/wp-content/uploads/2019/12/TIM截图20191208174038_conew2.jpg

在Composer中使用自己修改的包

在使用composer组件时,有时候需要对包进行一些自定义修改,有一些教程中写需要修改composer.json,然后发布到Packagist,但如果只是适应自己需求所作的小修改,其实并没有必要发布到Packagist,而这样做也是Packagist不推荐的: Do not submit forks of existing packages. If you need to test changes to a package…

454   2019-12-08  

解决微信小程序在7.0.8及电脑版上的cookie问题

更正:事后查证,此问题应是 HTTP/2 特性所导致。 微信小程序在7.0.8版本及电脑版上,response header的Set-Cookie参数变成小写,可能导致通过直接获取res.header['Set-Cookie']来存储Cookie的方法不可用。 这个问题在7.0.8上首次出现(我当时使用的是测试版),而电脑版长期有这个问题(我原本以为是电脑版还不完善导致不兼容,直到这个问题在手机版上也出现了)。 解决方案: 通过先遍历res.header,把参数转小写后判断。 let found = false for(let header in res.header){ …

585   2019-11-10  

让vscode支持格式化laravel blade模版文件

安装以下两个扩展: 名称: Laravel 5 Snippets id: onecentlin.laravel5-snippets 说明: Laravel 5 snippets for Visual Studio Code 版本: 1.7.0 发布者: Winnie Lin VS Marketplace 链接: https://marketplace.visualstudio.com/items?itemName=onecentlin.laravel5-snippets 名称: Laravel Blade Snippets id: onecentlin.laravel-blade 说明: Laravel blade snippets and syntax highlight support 版本: 1.20.0 发布者: Winnie Lin VS Marketplace…

700   2019-10-30  

在ThinkPHP中使用Laravel Mix

参照Laravel Mix文档,可以用在独立项目中,因此可以在ThinkPHP根目录下,参照Laravel项目,建立如下两个文件: package.json { "private": true, "scripts": { "dev": "npm run development", "development": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js", "watch": "npm run development -- --watch", "watch-poll": "…

656   2019-10-15  

加载更多