首页 文章 精选 留言 我的

精选列表

搜索[微服务快速开发平台],共10000篇文章
优秀的个人博客,低调大师

CakePHP 4.3.0 版本正式发布,PHP 快速开发框架

CakePHP 发布了4.3.0 正式版,CakePHP 是一个运用了诸如 ActiveRecord、Association Data Mapping、Front Controller 和 MVC(model–view–controller) 等著名设计模式的开源 Web 框架,用 PHP 编写,以 Ruby on Rails 的概念为模型,并在 MIT 许可下进行分发。 主要更新: 添加了一个新的 fixture 系统,它允许使用现有的migrations或 SQL 转储文件来定义架构,(包括支持 cake's migrations 和SQL 转储文件)。 加入TestSuite\HttpMockTrait,便于模拟 HTTP 客户端请求 加入LocatorAwareTrait::fetchTable(),让getTableLocator()->get()更符合人体工程学。 加入Controller::middleware(),这个方法可以定义特定于控制器的中间件,或者当前控制器的操作。 deprecationWarning()不再发出重复的警告。 Form对象支持多个验证器,并利用与 ORM 类似的接口来使用这些验证器。 Logged SQL查询现在使用布尔值,更容易粘贴到 repl 里面。 cake console指令被提取到一个新的cakephp/repl包中。 CspMiddleware可以透明地添加基于nonce的策略。 FormHelper将自动设置其他 ARIA 属性。 ORM 现在可以清楚地将用户时区的日期和时间设置为应用的时区。 CakePHP 的依赖组件league/container升级到 4.1.1 版本。 更新公告:https://github.com/cakephp/cakephp/releases/tag/4.3.0

优秀的个人博客,低调大师

【iOS 开发】同步快速判断视频是否可以播放

背景 拿到一个视频的 url 地址(无论是远程还是本地),有时候在播放之前需要检测该视频是否可以播放(本地可能是文件损坏,远端地址情况更复杂),下面介绍两种适用不同情况的方法来实现。 常用的异步方法 import UIKit import AVFoundation class ViewController: UIViewController { var avplayer: AVPlayer! override func viewDidLoad() { super.viewDidLoad() let url = URL(string: "http://gslb.miaopai.com/stream/24fONfescp-SRz61DjJz62WO1LLIwjIQXHthNg__.mp4")! avplayer = AVPlayer(url: url) avplayer.addObserver(self, forKeyPath: "status", options: .new, context: nil) } override func observeValue(forKeyPath keyPath: String?, of object: Any?, change: [NSKeyValueChangeKey : Any]?, context: UnsafeMutableRawPointer?) { if (avplayer == object as? AVPlayer) && (keyPath == "status") { print((avplayer.status == .readyToPlay) ? "readyToPlay" : "fail") } } } 如代码所示,我们可以使用 AVPlayer (MPMoviePlayerController 在 iOS 9 被 deprecated) 尝试解析 url,进行视频播放。然后可以通过 KVO 在它的 status 属性变为 “readyToPlay” 的时候,进行播放等操作。在这里这个 status 只能异步获取,如果你直接在初始化 AVPlayer 之后就同步获取这个值,这个值会是 “unknown”。 如果你在这里需要直接使用这个 AVPlayer 进行视频播放,那么推荐使用这个 KVO 方法。否则会有这样几个缺点: avplayer 用于判断视频可播放性,本应该是局部变量,现在因为 KVO 它的 scope 被扩大了 KVO 方法在代码可读性上不如同步的直接判断 控制台会默认打印下面这些东西: 2017-09-05 14:43:36.983707+0800 VideoPlayable[40473:10508878] [aqme] 254: AQDefaultDevice (1): skipping input stream 0 0 0x0 2017-09-05 14:43:38.992581+0800 VideoPlayable[40473:10508878] [aqme] 254: AQDefaultDevice (173): skipping input stream 0 0 0x0 2017-09-05 14:43:41.000864+0800 VideoPlayable[40473:10508878] [aqme] 254: AQDefaultDevice (173): skipping input stream 0 0 0x0 同步判断方法 import UIKit import AVFoundation class ViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() let url = URL(string: "http://gslb.miaopai.com/stream/24fONfescp-SRz61DjJz62WO1LLIwjIQXHthNg__.mp4")! let avasset = AVAsset(url: url) print(avasset.isPlayable) } } 经过一番折腾,发现直接通过 url 新建出 AVAsset,即可通过 isPlayable 属性判断视频是否可以正常播放。如果仅仅是想要判断视频可播放性,而不需要使用 AVPlayer,建议使用这种方法,可以将 AVAsset 的创建逻辑加入到你的自定义播放器的 init 方法中。 我尝试在 iPhone 6s 上使用本地的一个约 800k 的 mp4 视频进行粗略测试,发现新建 AVAsset 耗时约 0.02s,新建 AVPlayer 异步返回耗时约 0.05s,这种同步方法大概快了一倍。

资源下载

更多资源
腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册