- 博客(1)
- 资源 (9)
- 收藏
- 关注
转载 Quartz.Net定时任务简单实用(实例)
《一、无配置实现》 1. 下载引用3个DLL:Quartz.dll、Common.Logging.dll、Common.Logging.Core.dll 下载地址:http://pan.baidu.com/s/1eRC5Iwi 2.创建任务操作类: 1 public class TimingJob : IJob 2 { 3 public void Execute(IJo...
2018-07-10 18:44:18 3339
c# WebSocket服务端握手解包原理
///
/// 生成Sec-WebSocket-Accept
///
/// 客户端握手信息
/// Sec-WebSocket-Accept
private static string GetSecKeyAccetp(byte[] handShakeBytes, int bytesLength)
{
string handShakeText = Encoding.UTF8.GetString(handShakeBytes, 0, bytesLength);
string key = string.Empty;
Regex r = new Regex(@"Sec\-WebSocket\-Key:(.*?)\r\n");
Match m = r.Match(handShakeText);
if (m.Groups.Count != 0)
{
key = Regex.Replace(m.Value, @"Sec\-WebSocket\-Key:(.*?)\r\n", "$1").Trim();
}
byte[] encryptionString = SHA1.Create().ComputeHash(Encoding.ASCII.GetBytes(key + "258EAFA5-E914-47DA-95CA-C5AB0DC85B11"));
return Convert.ToBase64String(encryptionString);
}
2018-04-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人