Home

CALayer的frame的计算

CALayer 的 frame 的计算 frame 代表图层或者视图在父图层或者父视图中的坐标和范围。UIView的frame属性是直接读取CALayer的frame属性。而CALayer的frame属性并没有关联实例变量,仅是setter和getter方法,是通过bounds,position,anchorPosition,以及transform等属性计算出来的。 bounds属性代表的是图层的内部坐标或者说是图层的尺寸 position属性代表的是图层的锚点在父图层中的坐标 anchorPosition属性代表的图层的锚点在本图层中的相对位置 transform属性代表的是图层的3D变换; affine...

Read more

jenkins插件

Jenkins的常用插件 用户权限管理 (Role Strategy Plugin) 下载插件 Role-based Authorization Strategy 在Configure Global Security的授权策略中打开Role-Based Strategy 设置中出现Manage and Assign Roles , 进入后可以创建角色,设置角色的权限并给用户分配角色 在Manage Roles中可以创建全局角色,job角色和node角色,可以为不同角色分配权限。在Assign Roles可以为用户分配角色

Read more

Github Action For ZLGithubClient

Github Action Github Action 是 Github 提供的 持续集成服务。因此只有保存在Github上的工程才可以使用。 Github Action的配置在工程的主目录下的.github/workflows目录下的yaml文件中 在yaml配置文件中可以配置action的触发条件,运行环境,具体执行的操作。 更具体的操作请参考Github Action 入门教程,Github Action官方文档 GitHub Action中的概念 workflow (工作流程):持续集成一次运行的过程,就是一个 workflow。 job (任务):一个 workflow 由一个或多个 jobs 构成,...

Read more

iOS的通知 (iOS 10 +)

iOS的通知 (iOS 10 +) 苹果系统提供了通知机制,既可以让iOS设备从远端的推送服务器接受通知,也可以由设备的app发送本地通知。既可以在设备的通知中心展示通知提示view,发出提示音,修改app icon的角标(给用户显式的提示),也可以静默地唤醒后台的app执行一段时间(约30s)后台任务。 UserNotification.framework与PushKit.framework UserNotification 从服务器向用户设备推送面向用户的通知,或者从您的应用程序本地生成通知。 不论你的app是否在设备上运行,设备都可以接受推送,并展示通知的提示,播放声音,以及修改角标。 ...

Read more

HTTP请求方法

HTTP请求方法 以下为对于同一URI使用不同方法时的抓包 GET : 获取资源 可以看到GET请求报文只有报文首部(请求行和首部字段),没有HTTP报文主体;而响应报文包括报文首部(状态行和请求字段)和报文主体 HEAD 获得报文首部 HEAD方法和GET方法一样,只是不返回报文的主体部分。用于确认URI的有效性以及资源更新的日期时间。 可以看到,和GET方法相同的URI,HEAD方法却没有响应报文的主体 POST 传输实体主体 POST方法用来传输实体的主体,因此使用POST方法时,请求的参数通常放在报文的主体中。虽然POST的功能和GET很相似,但是POST的主要目的并不是获取响应的主体内容。 可以看到POS...

Read more

百度HTTPS握手过程

百度HTTPS过程  > 如下图所示,https://www.baidu.com请求的抓包 首先我们看到TCP的三次握手,然后是SSL/TLS的握手流程: Client Hello : 客户端向服务端发起握手 该报文属于Handshake Protocol的一部分,报文内容包括随机数,客户端支持的加密算法套件,session id以及扩展部分。 随机数会用于之后对称秘钥的计算,属于混淆的一部分 session id 用于会话的复用,由服务端生成,首次创建为空 加密算法套件:服务端会选择其中一个加密算法使用(包括秘钥协商算法,对称加密和hash算法) Server Hello ...

Read more

HTTPS 概述

HTTPS 由于HTTP报文在网路上是以明文的方式传递的,因此很多时候在安全方面无法满足商用的要求,无法保证数据不被中间人截取和篡改(中间人攻击)。而HTTPS协议在传递报文前进行了身份认证、数据加密,这就保证了HTTP报文的可靠性、数据完整性、数据加密性 对称加密 我们可以使用对称加密技术(DES,3DES,AES)对HTTP报文进行加密;AES加密技术是现在最流行且有效的加密算法,可以可靠的保证密文不被中间人解析,只要对称秘钥不泄漏。 如果中间人截取了对称秘钥,完全可以换成自己的秘钥传递给另一端,这样就不能解决中间人攻击。那么问题就变为怎么安全的传递对称秘钥? 这个时候我们可以非对称加密技术加密对称秘钥,然后再在网路上传递 非对称加密...

Read more