ASP.NET SignalR依赖JQ,故小程序不能直接使用。
SignalR的构建就不多说了,网上多得是。
原理:仿照官方JS访问服务器的方式,先用get方式请求negotiate接口,获取websocket的token,再拼接ws连接得到微信能用的ws或者wss连接了,接下来看微信小程序接口。
注意事项:
1.微信小程序本地测试不需要wss的,直接本机运行项目,用局域网网址访问就可以了。
2.websocket需要IIS8才能支持,IIS Express可以用,但需要配置一下用IP访问 (微信内不能用localhost访问)
了解websocket机制
假设我在web端有一个聊天室页面,假设地址为https://www.xxx.com/chat.html,由于后端Startup.cs使用的是默认目录signalr
using System; using System.Threading.Tasks; using Microsoft.Owin; using Owin; [assembly: OwinStartup(typeof(Star.Web.Startup))] namespace Star.Web { public class Startup { public void Configuration(IAppBuilder app) { app.MapSignalR();//启动SignalR默认目录:/signalr } } }