error-.net websocket 实现 报错

问题描述

.net websocket 实现 报错
Error during WebSocket handshake: Unexpected response code: 200

chrome控制台报的错误
action代码

         public HttpResponseMessage T()        {            if (System.Web.HttpContext.Current.IsWebSocketRequest)            {                System.Web.HttpContext.Current.AcceptWebSocketRequest(ProcessWSChat);            }            return new HttpResponseMessage(HttpStatusCode.SwitchingProtocols);            //return View();        }        private async Task ProcessWSChat(AspNetWebSocketContext context)        {            System.Net.WebSockets.WebSocket socket = context.WebSocket;            while (true)            {                //ArraySegment<byte> buffer = new ArraySegment<byte>(new byte[1024]);                //WebSocketReceiveResult result = await socket.ReceiveAsync(                //    buffer CancellationToken.None);                if (socket.State == WebSocketState.Open)                {                    //string userMessage = Encoding.UTF8.GetString(                    //    buffer.Array 0 result.Count);                    string userMessage = DateTime.Now.ToString();                    ArraySegment<byte> buffer = new ArraySegment<byte>(                        Encoding.UTF8.GetBytes(userMessage));                    await socket.SendAsync(                        buffer WebSocketMessageType.Text true CancellationToken.None);                }                else                {                    break;                }            }        }

js代码

 <script type=""text/javascript"">    var serverDatastatusDivws;    //var SERVER_URL = ""/Dou/T"";    window.onload = function () {        ws = new WebSocket(""ws://"" + window.location.host  + ""/Sun/T"");        serverData = document.getElementById(""serverData"");        statusDiv = document.getElementById(""statusDiv"");        startlistenServer();    }    function startlistenServer() {        statusDiv.innerHTML=""Start Connect Server..."";        //var es = new EventSource(SERVER_URL);        ws.onopen = openHandler;        ws.onerror = errorHandler;        ws.onmessage = messageHandler;    }    function openHandler(e) {        statusDiv.innerHTML = ""Server Open<br>"";    }    function errorHandler(e) {        statusDiv.innerHTML = ""Error<br>""+e.message;    }    function messageHandler(e) {        serverData.innerHTML = e.data;    }</script>

解决方案

    你确定HttpContext.Current 这个没错
时间: 2024-12-22 07:39:41

error-.net websocket 实现 报错的相关文章

javawebsocket302-java websocket报错302

问题描述 java websocket报错302 WebSocket connection to 'ws://127.0.0.1:3333/buguback/websocket' failed: Error during WebSocket handshake: Unexpected response code: 302 解决方案 你的服务器看上去有问题,它怎么产生跳转了,调试下. 解决方案二: 或者你的地址写的不对. 解决方案三: 后端的代码: @ServerEndpoint("/websoc

代码-vc 6.0 error c2491 报错啊,头大

问题描述 vc 6.0 error c2491 报错啊,头大 简单又奇怪的问题又来了... debug版完全正常:release版报错c2491. definition of dllimport function not allowed. (我是接手的别人的项目,项目工程代码里没有看到有dllimport 或者是其他明显的问题啊). 解决方案 检查一下你Release版本跟Debug版本的工程配置,尤其预编译宏的设置. 应该有宏定义不一致,导致dllexport,dllimport的导入 解决方

联想thinkpadt410 开机失败报错fan error怎么办?

  联想tinkpad t410 开机失败报错fan error怎么办?开机报fan error错误是因为机器散热系统工作不正常,导致cpu等部件过热引起的,需要拆机清理散热器,添加散热硅脂等等.tinkpad t410跟t60p相比结构上更为精密,尤其是键盘的结构是不一样的,拆机的过程中一定要注意键盘前面有两个螺丝固定,后面有1个螺丝钉固定的,而且前面的两个螺丝钉是隐藏在两个键盘帽下面的,很隐蔽,大家一定要小心. 1.首先把t410翻过来,把电池先取下来.然后把背后的螺丝一个个的取下来,然后按

cuda cudaMemcpy 报错 unkown error

问题描述 cuda cudaMemcpy 报错 unkown error 我是一个cuda新手,现在在测试一个程序,它报的错误是 unkown error ,是从最后的cudaMemcpy报出来的,求高人指教,我不知道是错在哪里了,在此谢过 #include "cuda_runtime.h" #include "device_launch_parameters.h" #include #include #define N (128*128*2) global voi

lnk1120-vs2010运行程序报错:error LNK2019: 无法解析的外部符号

问题描述 vs2010运行程序报错:error LNK2019: 无法解析的外部符号 如题,我在vs2010环境下做C++练习题时出现该错误.程序代码如下: //array.h#ifndef ARRAY_H#define ARRAY_Htemplate<typename T>class Array{public: Array(int n);//数组首地址不用指定,待会分配 Array(Array &a); ~Array(); T getAt(int i);//返回第i个数组元素 voi

shopnc2 4-shopnc2.4 wap手机商城报错domain error

问题描述 shopnc2.4 wap手机商城报错domain error shopnc2.4 wap手机商城报错domain error不知道有哪位大神解决了?麻烦帮我解决下 看评论 是zepto.js版本问题 该怎么修改呢? 十万火急啊

php图片上传报错error=3

问题描述 php图片上传报错error=3 upload: <?php/** Created by PhpStorm. User: rosen Date: 15-11-5 Time: 下午8:43*/print_r($_FILES['file']); ?> 为什么程序运行结果报错Array ( [name] => 2015-10-19 18:47:42屏幕截图.png [type] => [tmp_name] => [error] => 3 [size] => 0

网页错误 rror-在虚拟机部署网页报错:Server Error in &amp;amp;#39;/&amp;amp;#39; Application.

问题描述 在虚拟机部署网页报错:Server Error in '/' Application. 在虚拟机部署网页时不时会报此错,重启IIS后暂时没问题,过多一会儿又提示该错! 参数:IIS6.0.asp.net 4.0.Win2003 SP2 备注:此为应用服务器,数据服务器在另外一台机 解决方案 是不是页面本身处理有问题 解决方案二: 在本机(非虚拟机)中部署无出现任何问题,在虚拟机中就报错...

c++-ado与数据库连接时成功了,但用参数化查询时却报错unkown error 0x800A0E7D

问题描述 ado与数据库连接时成功了,但用参数化查询时却报错unkown error 0x800A0E7D 数据库用的是server 2005,但在下载时遇到了问题,,后来求助网上,完成后,程序名却叫microsoft sql server studio express,不晓得是不是数据库的问题. 希望大神指点! 以下是我的代码:我在CADOcon定义了_connectionptr指针,所以connection这一部分应该是没问题的.void AddUser::OnOK() { // TODO: