http和ws哪个快

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了http和ws哪个快相关的知识,希望对你有一定的参考价值。

参考技术A ws。
WS协议和WSS协议两个均是WebSocket协议的SCHEM,两者一个是非安全的,一个是安全的。也是统一的资源标志符。就好比HTTP协议和HTTPS协议的差别。非安全的没有证书,安全的需要SSL证书。(SSL是Netscape所研发,用来保障网络中数据传输的安全性,主要是运用数据加密的技术,能够避免数据在传输过程被不被窃取或者监听。)其中WSS表示在TLS之上的WebSocket。WS一般默认是80端口,而WSS默认是443端口,大多数网站用的就是80和433端口。(在高防防护过程中,80和433端口的网站是需要备案才可以接入国内的。)当然网站也会有别的端口,这种如果做高防是方案是可以用海外高防的。WS和WSS的体现形式分别是TCP+WS AS WS ,TCP+TLS+WS AS WS。服务器网址就是 URL。

c#如何监听复制(剪切)事件

最好有代码的形式展现。

C#监听复制事件
在网上查了一些资料,先采用SetClipboardViewer方法实现,具体原理可以参考http://www.cnblogs.com/jht/archive/2006/03/20/354088.html,我的程序中使用的是http://code.google.com/p/clipboardviewer/提供的ClipboardChangeNotifier.cs类,比较方便,类代码见附件(在google code中下载或http://www.kuaipan.com.cn/file/id_22823997376823393.htm),使用方法为:
主窗体初始化时:

[csharp] view plaincopy

ClipboardChangeNotifier clipChange = new ClipboardChangeNotifier();
clipChange.ClipboardChanged += new EventHandler(clipChange_ClipboardChanged);
clipChange.AssignHandle(this.Handle);
clipChange.Install();
主窗体退出时:

[csharp] view plaincopy

clipChange.Uninstall();

此程序在XP下运行正常,但是后来在WIN7下使用时遇到了一些问题,经常会在屏幕保护程序或系统休眠后,不再实时监视剪贴板,具体原因不明,后来查了下资料,有人提到SetClipboardViewer函数在Vista以上版本工作并不是很稳定,建议使用AddClipboardFormatListener这个新的API函数,MSDN(http://msdn.microsoft.com/en-us/library/windows/desktop/ms649033%28v=vs.85%29.aspx)上提到该API函数只能用于Vista及以上版本,经测试,程序工作正常

代码比SetClipboardViewer方法简单:
首先声明API函数

[csharp] view plaincopy

[DllImport("user32.dll")]
public static extern bool AddClipboardFormatListener(IntPtr hwnd);

[DllImport("user32.dll")]
public static extern bool RemoveClipboardFormatListener(IntPtr hwnd);

private static int WM_CLIPBOARDUPDATE = 0x031D;

窗体初始化时添加对剪贴板的监视:
[csharp] view plaincopy

AddClipboardFormatListener(this.Handle);

窗体关闭时移除对剪贴板的监视:

[csharp] view plaincopy

RemoveClipboardFormatListener(this.Handle);

接收到剪贴板更新的消息时,读取剪贴板内容:

[csharp] view plaincopy

protected override void DefWndProc(ref Message m)

if (m.Msg == WM_CLIPBOARDUPDATE)

UpdateClipValueList();

else

base.DefWndProc(ref m);

参考技术A Windows 系统提供了 API SetClipboardViewer,用于监视剪贴板。

Vista 或更高版本的系统建议使用新的 API AddClipboardFormatListener。

参考:http://blog.csdn.net/rrrrssss00/article/details/7430862
参考技术B 用hook方式,具体代码可以网上搜,

以上是关于http和ws哪个快的主要内容,如果未能解决你的问题,请参考以下文章

go语言聊天室实现(六)创建HTTP连接,并升级为长连接

具有 HTTP 和 WS 协议的 Apache 代理

如何设置 ApolloServer 和 SubscriptionServer 以在 graphql 中使用 http 和 ws

TLS与HTTP摘要与WS-Security

同时服务 HTTP 和 WS 客户端

是否可以使用带有所需端口的 http 方案,比如 6500,而不是 WebSockets 中的 ws 和 wss 方案?