SocketIO4Net.Client
Project Description
SocketIO4Net.Client
Update as of 11/02/2013
A develop branch is up at https://github.com/jstott/socketio4net/tree/develop for anyone looking to take an early peek. Xhr-polling and websockets are working from the C# client. Thank to the efforts from one of our users Nick, this feature is just about there!
Of particular interest, I'm looking for feedback on the .net 40 assembly types (client, PCL etc...) most interested in. The plan is to release a both .net v4.0 & v4.5, using native .net websockets in v4.5 vs websocket4net currenlty in v4.0.
SocketI04net v4.0 is now leveraging the Microsoft.BCL.Async library (includes Microsoft.BCL.Build, Http packs) - please let me know if that create any additional issues.
Nuget packages are not available (yet), but after some additional testing and release notes will create a pre-release version for the latest code.
Please continue to leave discussions here, and if you have/see any issues with the latest develop code on github, please log there.
Jim
NuGet updated to v06.26
Project Description
SocketIO4Net.Client provides a .NET 4.0 C# client for Socket.IO. It provides an overall interface similar to the client JavaScript experience, leveraging the WebSocket4Net project for an underlying websocket implementation.
My goal for this project is a simple & familiar experience for .net clients. You know you want your .Net app to join in some of the fun, right? Besides, all the cool kids are using Nodejs and Socket.IO these days anyway, give it a whirl.
This resulting signature is very similar to the socket.io javascript counterpart:
node.js / JavaScript client
socket.on('news', function (data) {
console.log(data);
});
C# .net client
socket.On("news", (data) => {
Console.WriteLine(data);
});
The all important - Sample / Demo code snippet
Client socket;
public void Execute()
{
Console.WriteLine("Starting TestSocketIOClient Example..."); socket = new Client("http://127.0.0.1:3000/"); // url to nodejs
socket.Opened += SocketOpened;
socket.Message += SocketMessage;
socket.SocketConnectionClosed += SocketConnectionClosed;
socket.Error += SocketError; // register for 'connect' event with io server
socket.On("connect", (fn) =>
{
Console.WriteLine("\r\nConnected event...\r\n");
Console.WriteLine("Emit Part object"); // emit Json Serializable object, anonymous types, or strings
Part newPart = new Part()
{ PartNumber = "K4P2G324EC", Code = "DDR2", Level = 1 };
socket.Emit("partInfo", newPart);
}); // register for 'update' events - message is a json 'Part' object
socket.On("update", (data) =>
{
Console.WriteLine("recv [socket].[update] event");
//Console.WriteLine(" raw message: {0}", data.RawMessage);
//Console.WriteLine(" string message: {0}", data.MessageText);
//Console.WriteLine(" json data string: {0}", data.Json.ToJsonString());
//Console.WriteLine(" json raw: {0}", data.Json.Args[0]); // cast message as Part - use type cast helper
Part part = data.Json.GetFirstArgAs<Part>();
Console.WriteLine(" Part Level: {0}\r\n", part.Level);
}); // make the socket.io connection
socket.Connect();
}
Getting Started
Two ways to get started:
- Download source code, compile, and run the included Test & Sample code and have a look around.
- Install via Nuget – run the following command in the Package Manager Console > Install-Package SocketIO4Net.Client
See the Documentation section for further details.
SocketIO4Net.Client的更多相关文章
- nodejs即时通讯模块+SocketIO4Net的使用小结
实现思路:客户端js连接了nodejs服务,通过.net连接nodejs服务,通过.net发送消息到nodejs,然后通过nodejs将消息推送给(用户)客户端 1.先下载nodejs安装,至于怎么安 ...
- vmware里面的名词 vSphere、vCenter Server、ESXI、vSphere Client
vmware里面的名词 vSphere.vCenter Server.ESXI.vSphere Client vSphere.vCenter Server.ESXI.vSphere Client VS ...
- Apache2.4:AH01630 client denied by server configuration
问题说明:Apache服务总共有4个,是为了防止单点故障和负载均衡,负载均衡控制由局方的F5提供. 访问的内容在NAS存储上,现象是直接访问每个apache的服务内容都是没有问题,但是从负载地址过来的 ...
- [异常解决] windows用SSH和linux同步文件&linux开启SSH&ssh client 报 algorithm negotiation failed的解决方法之一
1.安装.配置与启动 SSH分客户端openssh-client和openssh-server 如果你只是想登陆别的机器的SSH只需要安装openssh-client(ubuntu有默认安装,如果没有 ...
- xamarin IOS 报错处理: an error occurred on client Build420719 while
xamarin IOS 开发时如果报错如下: an error occurred on client Build420719 while...... 出现如下问题时,可能是1.丢失文件2.没有包括在项 ...
- ASP.NET OAuth:access token的加密解密,client secret与refresh token的生成
在 ASP.NET OWIN OAuth(Microsoft.Owin.Security.OAuth)中,access token 的默认加密方法是: 1) System.Security.Crypt ...
- 在ASP.NET中基于Owin OAuth使用Client Credentials Grant授权发放Token
OAuth真是一个复杂的东东,即使你把OAuth规范倒背如流,在具体实现时也会无从下手.因此,Microsoft.Owin.Security.OAuth应运而生(它的实现代码在Katana项目中),帮 ...
- [OAuth]基于DotNetOpenAuth实现Client Credentials Grant
Client Credentials Grant是指直接由Client向Authorization Server请求access token,无需用户(Resource Owner)的授权.比如我们提 ...
- OData Client Code Generator
转发. [Tutorial & Sample] How to use OData Client Code Generator to generate client-side proxy cla ...
随机推荐
- Oracle11g温习-第一章 3、ORACLE逻辑结构
2013年4月27日 星期六 10:27 Oracle逻辑结构的相关数据字典: 记录各个表空间的详细信息. SYS @ prod > select tablespace_name,status ...
- C# / .NET 在类中使用Server.MapPath
直接在类中使用 Server.MapPath 会出现错误,这是由于类中不能直接使用 System.Web.UI.Page 的非静态函数造成的.解决方法有两种: 方法一.使类继承System.Web.U ...
- EBS 中iSupplier模块中的MAPPING_ID
在EBS的供应商模块中,有一个非常有意思的表 POS_SUPPLIER_MAPPINGS, 这个表中建立了supplier_reg_id,vendor_id,party_id之间的映射关系. 这个表中 ...
- axis2的WebService无法注入Service层类
package com.vrv.paw.axiswebservices; import org.springframework.web.context.ContextLoader; import or ...
- 基于高通 qca4531 mp3 demo板 双系统引导设计
为了系统和稳定性,flash上有两套系统.在uboot引导阶段会根据当前的bootslot变量,决择运行哪套系统.进入系统之后,会自动挂载数据区,然后启动开关的应用程序. 如上图所示系统有两块存储芯片 ...
- 快速切题 usaco ariprog
题目:给定3<=n<=25,m<250,求m及以内的两两平方和能否构成为n的等差数列 1 WA 没有注意到应该按照公差-首项的顺序排序 2 MLE 尝试使用桶,但是实际上那可能是分散 ...
- pyinstall 把你的程序变成windows的可执行程序。py exe UPX
我们先看一下这个官方文档 http://pythonhosted.org/PyInstaller/ 其实常用的也就是两句 pyinstall ***.py pyinstall -F ***.py 一: ...
- 在电脑用Chrome运行安卓apk程序[ARC Welder]
chrome好用,但要FQ. 为了某些特别有意思的功能,FQ也要实现它. 这个就是:在chrome中使用android APP 一:系统需求: chrome浏览器 梯子(就是FQ,因为我们要去goog ...
- 根据ip,实现地址信息查询接口
偶然发现的360搜索的ip查询接口,记录下: 接口地址:https://m.so.com/position 使用方式1:传ip 如访问https://m.so.com/position?ip=47.1 ...
- Swift网络封装库Moya中文手册之Plugins
Plugins Moya plugins用于反映请求的发起或接收.Plugins定义为 PluginType 属性,可以在请求准备发起和接收到返回数据时回调. Built in plugins Moy ...