SessionManager

【AFNetworking 分析】POST 上传多表单类型数据

孤街浪徒 提交于 2021-02-06 20:34:21
[TOC] Pre AFNetworking分析版本:4.0.1 调试所用代码(AFNetworking demo iOS) XCTestExpectation *expectation = [self expectationWithDescription:@"Request should succeed"]; [self.sessionManager.requestSerializer setValue:@"default value" forHTTPHeaderField:@"field"]; [self.sessionManager POST:@"post" parameters:@{@"key":@"value"} headers:@{@"field":@"value"} constructingBodyWithBlock:^(id<AFMultipartFormData> _Nonnull formData) { [formData appendPartWithFileData:[@"Data" dataUsingEncoding:NSUTF8StringEncoding] name:@"DataName" fileName:@"DataFileName" mimeType:@"data"]; } progress:nil success:^

Solon rpc 之 SocketD 协议

久未见 提交于 2021-01-09 21:45:20
Solon rpc 之 SocketD 协议 Solon rpc 之 SocketD 协议 - 概述 Solon rpc 之 SocketD 协议 - 消息上报模式 Solon rpc 之 SocketD 协议 - 消息应答模式 Solon rpc 之 SocketD 协议 - 消息订阅模式 SocketD 是一种二进制的点对点通信协议,是一种新的网络通信第七层协议。旨在用于分布式应用程序中。从这个意义上讲,SocketD可以是RSocket等其他类似协议的替代方案。它的消息协议规范具有异步,背压的双向,多路复用,断线重连,基于消息等特性。暂时只提供Java实现,目前做为Solon rpc的sockte通道协议。 本案以简单的消息订阅模式为例演示:(即等着服务端给消息,例如配置服务的变更通知) 包依赖 <dependency> <groupId>org.noear</groupId> <artifactId>solon.boot.socketd.smartsocket</artifactId> <version>1.2.18</version> </dependency> 服务端 //启动服务端 public class ServerApp { public static void main(String[] args) { //启动Solon容器(SocketD bean

Xrdp vnc password failed

偶尔善良 提交于 2020-11-09 20:30:54
I try to login Ubuntu 16.04 xrdp through window 10 with mstsc. It was successful in 2019/01/09 night, but failed in 2019/01/10 morning. An system auto-update log relating to xrdf is captured. Connection log is listed below: connecting to sesman ip 127.0.0.1 port 3350 sesman connect ok seding login info to session manager, please wait... xrdp_mm_process_login_response: login successful for display started connecting connecting to 127.0.0.1 5916 tcp connected security level is 2 (1=none, 2=standard) password failed error - problem connecting Solution: Downgrade xrdp: sudo apt-get install xrdp= 0

【iOS】Instruments性能检测之耗电优化

北城以北 提交于 2020-10-23 03:40:07
   耗电优化最终目的:通过尽可能降低CPU、GPU功耗来降低手机电量消耗。   (1)尽可能少用定时器;   (2)优化I/O操作(所谓的I/O操作也就是文件操作,我们简称为I/O操作。怎么优化呢?尽量不要频繁写入小数据,最好批量一次性写入。读写大量主要的数据时,考虑用dispatch_io,其提供了基于GCD的异步操作文件I/O的API。用dispatch_io系统会优化磁盘访问);   (3)数据量比较大的,建议使用数据库(SQlite、CoreData);   影响耗电的几个方面:   (1) Network : 网络活动会唤起需要长时间周期性供电的无线电模组,可以分批次进行网络请求,来降低开销.   (2) Location : 精密&高频的的定位会增加开销,需要按需使用.   (3) CPU : CPU使用率超过20%就会快速耗干电池电量.高效使用CPU,并且当用户出现模糊输入时快速做出不做事情的反应.     (4) GPU : 图形处理器(显卡的处理器),乱使用GPU会导致交互差,并且降低电池寿命.     (5) Background : 后台状态App仍会消耗电量,App要按需执行后台操作,并使用延迟APIs来保证系统运算高效执行.另外,在app进入后台状态是,立即减少动作,并且通知系统一次这些动作已经完成.    1、网络优化   (1)网络不可用

带你认识绕不开的ASLR

拈花ヽ惹草 提交于 2020-10-19 00:59:45
微软从 windows vista/windows server 2008(kernel version 6.0) 开始采用 ASLR 技术,主要目的是为了防止缓冲区溢出 ASLR 技术会使PE文件每次加载到内存的起始地址随机变化,并且进程的栈和堆的起始地址也会随机改变。 ASLR(Address space layout randomization) 是一种针对缓冲区溢出的安全保护技术,通过对堆、栈、共享库映射等线性区布局的随机化,通过增加攻击者预测目的地址的难度,防止攻击者直接定位攻击代码位置,达到阻止溢出攻击的目的。据研究表明 ASLR 可以有效的降低缓冲区溢出攻击的成功率,如今 Linux、FreeBSD、MacOS、Windows 等主流操作系统都已采用了该技术。 一、主要特点 1、 映像随机化 经典的方法是用注册表项 HKLM\SYSTEM\CurrentControlSet\Session Manager\Memory Management 的方法对映像随机化禁用 设置为0 禁用 ,-1强制对可随机化的映像进行处理,其他值正常工作; 各模块的低位2位不变; 只是对加载基址的前2个字节做了随机处理; 2、堆栈随机化 XP 下不具备, VISTA 具备,每次获取堆地址不同; 不需要精确跳转的,溢出手段影响有限; 3、 PEB TEB 随机化 XP SP2 中已经引入了

sql server安装提示重启失败

隐身守侯 提交于 2020-08-16 16:51:54
方法/步骤  解决方法一:   1、同时按下Win7旗舰版电脑键盘上的win+R快捷键打开电脑的运行窗口,在打开的运行窗口中,输入regedit并单击回车,这样就可以打开注册表编辑器窗口了 2、在打开的注册表编辑器窗口中,点击展开左侧菜单中的HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server; 3、然后在这个Microsoft SQL Server选项上点击鼠标右键,选择删除; 4、再次在左侧菜单中定位到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager,然后在右侧找到PendingFileRenameOperations,然后点击右键将PendingFileRenameOperations删除就可以了; 来源: oschina 链接: https://my.oschina.net/u/4381258/blog/4309084

SQL Server2019安装详细教程及常见错误处理

£可爱£侵袭症+ 提交于 2020-08-14 03:34:47
在.net开发中我们经常会用到SQL Server,微软的SQL Server其实还算不错,而且其Developer(开发者版)也免费对用户使用,但是在安装的过程中,尤其是在没有之前版本的全新安装时,往往会出现很多问题,在本文中我将详细再现整个安装流程,并对出现的问题给出解决办法。仅针对同一台机第一次安装,如果前期有安装卸载此教程可能不适用,且在安装之前建议关闭windows防火墙。 一.官网下载 可以直接百度打开 微软官网 ,选择中间的developer版就可以满足学习需要。developer版本是全功能且免费的。 二.安装SQL Server实例 右击下载好的exe文件,使用管理员身份运行;这里我们选择自定义安装。 媒体文件默认是安装在C盘,这里也可以选在放在其它盘。 安装完毕后进入新的页面,开始正式的安装过程,在左侧选择 安装 字样, 点击【全新SQL Server 独立安装或向现有安装添加新功能】 这里版本不用更改,也不需要产品密钥,下一步。 接受协议,勾选后继续下一步。 下一步。 之后往下进行安全检查,进行安全检查时会出现防火墙警告,无视掉就ok。继续下一步。 选择自己所需的功能,不建议全选很多功能暂时用不上。必选:数据库引擎服务、和SQL复制。 选择默认实例,然后下一步 下一步 选择混合模式,并设置密码。此时用户名为sa,并点击添加当前用户添加用户(此处的密码比较重要

Springboot + Vue + shiro 实现前后端分离、权限控制

时光毁灭记忆、已成空白 提交于 2020-08-11 14:59:33
本文总结自实习中对项目的重构。原先项目采用Springboot+freemarker模版,开发过程中觉得前端逻辑写的实在恶心,后端Controller层还必须返回Freemarker模版的ModelAndView,逐渐有了前后端分离的想法,由于之前,没有接触过,主要参考的还是网上的一些博客教程等,初步完成了前后端分离,在此记录以备查阅。 一、前后端分离思想 前端从后端剥离,形成一个前端工程,前端只利用Json来和后端进行交互,后端不返回页面,只返回Json数据。前后端之间完全通过public API约定。 二、后端 Springboot Springboot就不再赘述了,Controller层返回Json数据。 @RequestMapping(value = "/add", method = RequestMethod.POST) @ResponseBody public JSONResult addClient(@RequestBody String param) { JSONObject jsonObject = JSON.parseObject(param); String task = jsonObject.getString("task"); List<Object> list = jsonObject.getJSONArray("attributes"); List

开源视频会议bigbluebutton开发(3)——架构体系图

ε祈祈猫儿з 提交于 2020-08-09 18:03:02
开源视频会议bigbluebutton开发(3)——架构体系图 体系结构概述 bbb使用nginx(engine x)作为代理服务器将请求发送给bbb客户端,tomcat6调用api,支持当客户端连接使用RTMPT(port 80, RTMPT 协议是HTTP协议的扩展,Adobe的Flash Player和media server支持。RTMPT的命令基本都是用来控制网络连接的持久性的。)代替RTMP(port 1935,RTMP 全称Routing Table Maintenance Protocol(路由选择表维护协议) 在 AppleTalk 协议组中,路由选择表维护协议(RTMP,Routing Table Protocol)是一种传输层协议,它在 AppleTalk 路由器中建立并维护路由选择表。)时支持http通道! 1,Ngnix代理bbb-web和bbb-aps来支持RTMPT服务bbb-client! 2,Grails应用负责操作创建会议和调度,同时负责加入会议登进登出! 3,负责将pdf资料转换成flash! 4,当SWFTools无法进行转换时,负责将pdf演示文档转换成flash,当然,会生成缩略图! 5,bbb-web与bbb-apps之间的信息通道! 6,red5负责同步会议的各个参与者! 7,负责监听用户的事件,如进入或者离开会议

STM32固件升级详解(BootLoader)

∥☆過路亽.° 提交于 2020-08-09 01:58:35
基础知识 这里以 KEIL 开发环境和 STM32F103RET6 为例。 上电时单片机首先进入复位中断 Reset_Handler,即汇编文件的复位中断处理函数。 并且有一个中断向量表默认存在于 flash 地址开始处。 为什么说是默认呢?这是因为如果没有特殊要求的话很少会去改中断向量表。实际上这个中断向量表是可以更改的。但是在更改向量表之前必须在地址开始处建立一个向量表,因为在复位后,程序默认(硬件决定的)从flash开始的第一个字读取栈指针,第二字就是复位中断的入口,并根据该指针最终进入复位处理函数中执行相应的函数。如果没有这个中断向量表程序是无法启动的。 那么既然前面说可以重新设定中断向量表的位置,那必然有一个寄存器记录着这张表的位置,这就是 VTOR 寄存器。从《Cortex-M3权威指南》可以看该寄存器的介绍: 并且向量表的偏移量有如下要求: 64*4 是因为一个表项为4字节。 更具体的关于更改向量表的信息查看《Cortex-M3权威指南》。 在复位处理函数中有进入 SystemInit 函数执行,在函数里有一个设置中断向量表的位置的语句。 VECT_TAB_OFFSET 默认情况下就是 0。 因为这是官方库函数,并且上电之后必定进入复位中断函数处理,因此必定会执行重新定位向量表的操作。因此只要修改宏定义就可以重新定位向量表。 先准备两个程序,一个为