精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

AJAX長輪詢之DotNet實現

開發 后端
今天和一個同事聊到了關于Web(傳統)實時通訊的問題,其中包括輪詢、長輪詢、長連接。最后同事說長輪詢對與.net來說比較難以實現(不使用任何框架)。

今天和一個同事聊到了關于Web(傳統)實時通訊的問題,其中包括輪詢、長輪詢、長連接。***同事說長輪詢對與.net來說比較難以實現(不使用任何框架)。

首先看一下什么是“長輪詢”!定義如下:

長輪詢:客戶端向服務器發送Ajax請求,服務器接到請求后hold住連接,直到有新消息才返回響應信息并關閉連接,客戶端處理完響應信息后再向服務器發送新的請求。

優點:在無消息的情況下不會頻繁的請求。

缺點:服務器hold連接會消耗資源。

以上 “長輪詢” 定義是我在網上抄的哦!

那么是不是只要滿足以上所訴的內容長輪詢是不是就成立呢?那就嘗試一下!

建立數據庫:

  1. if not exists(select 1 from  sys.databases where name='beidoudemo')  
  2. begin  
  3. Create Database beidoudemo  
  4. end  
  5. go  
  6.  
  7. use beidoudemo  
  8. go  
  9. if exists(select 1 from sysobjects where name='AjaxPolling' and type='u')  
  10. begin  
  11.   drop table AjaxPolling  
  12. end  
  13. go  
  14. Create table AjaxPolling  
  15. (  
  16.   id int identity Primary key,  
  17.   userName varchar(30) not null,  
  18.   passwordKey varchar(50) not null 

選用Jquery中的AJAX方法發送異步請求,前臺省了很多事情了!

具體代碼請看:

  1. <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="LongPolling.aspx.cs" Inherits="AjaxFinder.LongPolling" %>  
  2.  
  3. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">  
  4. <html xmlns="http://www.w3.org/1999/xhtml">  
  5. <head runat="server">  
  6.     <script src="Scripts/jquery-1.4.1.js" type="text/javascript"></script>  
  7.     <title></title>  
  8.     <script type="text/javascript">  
  9.         var userID = 0;  
  10.         function SendXHR() {  
  11.             $.ajax({  
  12.                 type: "post"//AJAX請求類型  
  13.                 url: "LongPollingServer.ashx"//請求url  
  14.                 cache: false,  //無緩存  
  15.                 timeout: 1000 * 80,  //AJAX請求超時時間為60秒  
  16.                 data: { time: 60, userID: userID }, //參數time時間為最多等待(后臺保持)時間(60秒無論是否有數據立即返回),單位為秒。userID判斷詩句是否為新數據的標識  
  17.                 success: function (data, textStatus) {  
  18.                     var obj = document.getElementById("NameDisplay");  
  19.                     //判斷返回成功還是失敗  如果后臺保持連接的時間一到并且沒有新數據就會返回fail開頭失敗的數據  
  20.                     if (data != null && data != "" && !(data.indexOf("fail") != -1)) {  
  21.                         var strarr = data.split(",");  
  22.                        // alert(strarr[0]);  
  23.                         userID = strarr[0];  
  24.                         obj.innerHTML = "親!有新用戶注冊哦!用戶名:" + strarr[1];  
  25.                     }  
  26.                     else {  
  27.                         obj.innerHTML = "親!暫無新用戶注冊哦";  
  28.                     }  
  29.                     SendXHR();//請求后立即發起AJAX請求  
  30.                 },  
  31.                 error: function (XMLHttpRequest, textStatus, errorThrown) {  
  32.                     //New Error do something  
  33.                     if (textStatus == "timeout") {  
  34.                         //超時間  
  35.                         SendXHR();  
  36.                     }  
  37.                 }  
  38.  
  39.             });  
  40.         }  
  41.         window.onload = function () {  
  42.             SendXHR();  
  43.         }  
  44.     </script>  
  45. </head>  
  46. <body>  
  47.     <form id="form1" runat="server">  
  48.     <div>  
  49.     </div>  
  50.         <div id="NameDisplay">  
  51.         </div>  
  52.     </form>  
  53. </body>  
  54. </html> 

前臺數據請求已經準備好了,接下來看一下后臺代碼實現。具體代碼如下:

  1. using System;  
  2. using System.Collections.Generic;  
  3. using System.Linq;  
  4. using System.Web;  
  5. using System.Text;  
  6. using System.Net;  
  7. using System.Threading;  
  8. using System.Data;  
  9.  
  10. namespace AjaxFinder  
  11. {  
  12.     /// <summary>  
  13.     /// AJAX長輪詢后臺處理頁面  
  14.     /// 主要用于保持連接  
  15.     /// 有數據返回,無數據繼續保持連接超時返回  
  16.     /// author:bluescreen  
  17.     /// Date  :2013-03-14  
  18.     /// blog:http://www.cnblogs.com/bluescreen/  
  19.     /// 請不要關注代碼編寫規范等一些問題。這僅僅是一個DEMO  
  20.     /// 還存在諸多問題  
  21.     /// </summary>  
  22.     public class LongPollingServer : IHttpHandler  
  23.     {  
  24.  
  25.         public void ProcessRequest(HttpContext context)  
  26.         {  
  27.            /*  
  28.             context.Response.ContentType = "text/plain";  
  29.             context.Response.Write("Hello World");*/ 
  30.             int SendTime = 0;  //最多等待時間  
  31.             int userID = 0;    //上一次的用戶ID  
  32.             if (context.Request.Form["time"] != null&&context.Request.Form["time"].ToString()!="")  
  33.             {  
  34.                 SendTime =int.Parse(context.Request.Form["time"].ToString());//接收傳來的的后臺要保持時間  
  35.             }  
  36.             if (context.Request.Form["userID"] != null && context.Request.Form["userID"].ToString() != "")  
  37.             {  
  38.                 userID = int.Parse(context.Request.Form["userID"].ToString());  
  39.             }  
  40.             int i = 0;//計算超時時間(秒)  
  41.             while (true)  
  42.             {  
  43.                 Thread.Sleep(1000);//停留一千毫秒(1秒)  
  44.                 i++;  
  45.                 if (i < SendTime)  
  46.                 {  
  47.                     if (NameStr(userID) != "")  
  48.                     {  
  49.                         context.Response.Write(NameStr(userID));  
  50.                         break;  
  51.                     }  
  52.                 }  
  53.                 if (i == SendTime)  
  54.                 {  
  55.                     context.Response.Write("fail:無數據");  
  56.                     break;  
  57.                 }  
  58.             }  
  59.         }  
  60.         /// <summary>  
  61.         /// 獲得用戶名  
  62.         /// </summary>  
  63.         /// <param name="userID"></param>  
  64.         /// <returns></returns>  
  65.         private string NameStr(int userID)  
  66.         {  
  67.             string result = string.Empty;  
  68.             string Sqlstr = "select top 1 ID,UserName from AjaxPolling   Order by ID desc";  
  69.             DataSet ds = new DataSet();  
  70.             ds = SQLHelper.Query(Sqlstr, null);  
  71.             if (ds != null)  
  72.             {  
  73.                 if (ds.Tables[0].Rows.Count >= 1)  
  74.                 {  
  75.                     if (int.Parse(ds.Tables[0].Rows[0][0].ToString()) != userID || 0 ==int.Parse(ds.Tables[0].Rows[0][0].ToString()))  
  76.                     {  
  77.                         result = ds.Tables[0].Rows[0][0].ToString() + "," + ds.Tables[0].Rows[0][1].ToString();  
  78.                     }  
  79.                 }  
  80.             }  
  81.  
  82.             return result;  
  83.         }  
  84.         public bool IsReusable  
  85.         {  
  86.             get 
  87.             {  
  88.                 return false;  
  89.             }  
  90.         }  
  91.     }  

以上代碼經過測試的確符合 “長輪詢” 的說法,那是不是可以說是長輪詢呢?各位大牛你們怎么看?

代碼下載:長輪詢AJAX之.net實現

原文鏈接:http://www.cnblogs.com/bluescreen/archive/2013/03/15/2960675.html

責任編輯:林師授 來源: 博客園
相關推薦

2011-05-18 13:28:46

jQueryPHPAJAX

2025-04-14 11:41:12

RocketMQ長輪詢配置

2023-11-28 08:49:01

短輪詢WebSocket長輪詢

2021-12-29 07:44:50

Dotnet 代碼系統

2025-04-27 02:00:00

實時通信Nacos服務端

2025-07-07 03:00:00

2024-05-21 10:23:02

反射技術.NET編程語言

2012-08-01 14:16:27

IBMdW

2022-07-14 08:36:28

NacosApollo長輪詢

2022-07-15 19:57:18

Cadence輪詢開源

2012-04-27 10:00:43

jQuery插件

2021-07-07 08:01:51

命令行Dotnet Core控制臺

2024-05-23 11:26:02

2009-05-20 14:49:16

ibmdwAjaxWeb開發

2021-02-26 12:37:39

WebSocketOkHttp連接

2024-05-27 09:52:57

反射技術.NET動態庫

2017-08-21 21:00:33

Java長圖文

2011-05-24 13:37:16

jQueryAjax

2009-06-18 15:23:49

緩存控制器模式Ajax模式

2025-02-26 02:00:00

點贊
收藏

51CTO技術棧公眾號

日本韩国欧美精品大片卡二| 亚洲精品久久久久久久久久久久 | 亚洲在线免费观看视频| 五月精品视频| 亚洲成人黄色在线| 日本久久精品一区二区| www免费在线观看| 成人一区二区三区中文字幕| 国产精品成人免费视频| 国产探花在线播放| 久久av资源| 欧美一级一区二区| 超碰97人人射妻| а√天堂在线官网| 国产日韩欧美精品一区| 51国产成人精品午夜福中文下载 | 国产亚洲精品bv在线观看| 一区二区三区www| 91精品国产高清91久久久久久| 性欧美18一19sex性欧美| 亚洲免费观看高清在线观看| 欧美日韩精品免费看| 性欧美8khd高清极品| 日韩av在线发布| 久久久伊人日本| 国精产品久拍自产在线网站| 香蕉久久精品| 精品日产卡一卡二卡麻豆| 日本xxxx黄色| 成年美女黄网站色大片不卡| 亚洲一区视频在线| 中文字幕日韩欧美在线视频| 性感美女一区二区三区| 亚洲人成网站在线在线观看| 色综合色综合色综合| 特大黑人娇小亚洲女mp4| yw视频在线观看| 久久久美女艺术照精彩视频福利播放| caoporen国产精品| 97人妻精品一区二区三区| 久久亚洲一区| 欧美一级在线播放| 成人精品免费在线观看| 黑丝一区二区三区| 欧美乱大交做爰xxxⅹ性3| 秋霞网一区二区三区| 国产一区二区三区四区大秀| 国产视频综合在线| 变态另类丨国产精品| 国产成人福利av| 日韩亚洲电影在线| r级无码视频在线观看| 免费在线观看黄| 中文字幕一区二区三区蜜月| 亚洲午夜精品久久久中文影院av| 国产一级网站视频在线| 国产拍欧美日韩视频二区| 欧美一区2区三区4区公司二百| 视频在线观看你懂的| 99久久免费精品高清特色大片| 国产日韩精品久久| 无码国产精品一区二区免费16| 夫妻av一区二区| 国产69精品久久久久9999apgf| 亚洲黄色小说网址| 粉嫩av亚洲一区二区图片| 国产精品v欧美精品v日韩精品| 超碰人人人人人人| 97精品久久久久中文字幕 | 91大神福利视频在线| 日韩欧美视频在线免费观看| 亚洲欧美日韩国产一区| 国产成人精品一区| 亚洲综合网av| 国产精品一区二区三区四区| 国产精品国产一区二区| 日韩美女一级视频| 国产色爱av资源综合区| 在线免费观看成人| 蜜桃传媒在线观看免费进入 | 一区二区视频免费| 狠狠色狠狠色合久久伊人| www.一区二区三区| 日韩在线无毛| 国产精品全国免费观看高清 | 久久久久久福利| 亚洲影视在线| 成人黄色在线免费| 天堂网在线中文| 国产精品素人一区二区| 欧美日韩dvd| 亚洲黄色中文字幕| 911精品国产一区二区在线| zjzjzjzjzj亚洲女人| 你懂的一区二区三区| 久久精品99国产精品酒店日本 | 51妺嘿嘿午夜福利| 1024精品久久久久久久久| 2018日韩中文字幕| 一女二男一黄一片| 99精品久久免费看蜜臀剧情介绍| 香蕉久久夜色| 国产盗摄精品一区二区酒店| 欧美在线视频全部完| 日本女人性视频| 国产欧美日韩精品高清二区综合区| 久青草国产97香蕉在线视频| 精品免费囯产一区二区三区| 国内国产精品久久| 欧美激情一区二区三区在线视频| 成人免费网站在线观看视频| 色偷偷久久人人79超碰人人澡| ass极品水嫩小美女ass| 成人免费在线播放| 亚洲福利视频网站| 一区二区三区四区免费| 欧美黄在线观看| 国产精品扒开腿做爽爽爽男男 | 国产成人精品免费| 视频一区视频二区视频| 欧洲一区精品| 欧美一区二区黄色| 中文字幕精品亚洲| 裸体素人女欧美日韩| 国产精品12| 国产激情在线视频| 精品视频在线看| 国产黄色网址在线观看| 好看的日韩av电影| 亚洲综合国产精品| 日本不卡不卡| 欧美伊人久久大香线蕉综合69| 特级西西人体wwwww| 欧美黄色大片网站| 成人午夜黄色影院| av黄色在线观看| 91久久精品网| 丰腴饱满的极品熟妇| 夜夜嗨一区二区三区| 欧美中文字幕精品| 欧美 日韩 国产 精品| 亚洲激情五月婷婷| 亚洲国产欧美91| 香蕉综合视频| 成人激情在线播放| 国产1区在线| 884aa四虎影成人精品一区| 丰腴饱满的极品熟妇| 久久久久久久尹人综合网亚洲| 久久av免费一区| 一区二区精品伦理...| 日韩经典一区二区三区| 中文字幕超碰在线| 久久色成人在线| 欧在线一二三四区| 日韩av有码| 国产欧美日韩高清| 黄色网在线播放| 日韩午夜激情电影| 青青草在线观看视频| 成人午夜av影视| 麻豆tv在线播放| 一区二区三区四区在线看 | 日韩福利在线观看| 久久夜色精品国产亚洲aⅴ| 精品国产无码一区二区| 亚洲午夜免费电影| 亚洲av网址在线| 日韩电影在线看| 伊人久久青草| 在线精品自拍| 91产国在线观看动作片喷水| 国产精品一区二区婷婷| 欧美另类变人与禽xxxxx| 欧洲猛交xxxx乱大交3| 成人午夜视频福利| 国产成人a亚洲精v品无码| 日韩精品永久网址| 91丨九色丨国产| 在线免费三级电影网站| 自拍偷拍亚洲区| 亚洲精品一区二区三区区别| 日韩欧美有码在线| 三级全黄做爰视频| av亚洲产国偷v产偷v自拍| 国产又猛又黄的视频| 欧美啪啪一区| 日本10禁啪啪无遮挡免费一区二区| 综合久久伊人| 欧美一级大胆视频| 日韩子在线观看| 亚洲精品99久久久久中文字幕| 日本欧美www| 亚洲综合区在线| 鲁丝一区二区三区| 国产成人在线观看| 日本xxxxxxx免费视频| 亚洲女同一区| 欧美理论一区二区| 视频在线观看免费影院欧美meiju| 欧美在线性爱视频| 99久久精品免费观看国产| 日韩精品视频免费| 99久久免费国产精精品| 日韩欧美在线一区| 精品一区二区三区四| 国产精品免费视频观看| 日本黄色免费观看| 国产美女av一区二区三区| 久久9精品区-无套内射无码| 欧美理论在线| 一本色道久久99精品综合| 日韩伦理一区二区三区| 亚洲qvod图片区电影| 无人区在线高清完整免费版 一区二| 欧美美女15p| 婷婷在线视频观看| 亚洲人av在线影院| 图片区 小说区 区 亚洲五月| 制服丝袜亚洲播放| 最近中文字幕在线观看视频| 欧美日韩亚洲系列| 国产性生活网站| 亚洲欧美一区二区三区国产精品| 国产jjizz一区二区三区视频| av在线一区二区| 4438x全国最大成人| 欧美96一区二区免费视频| 国产男女激情视频| 亚洲欧美日本视频在线观看| 日本一道本久久| 黄色亚洲免费| 妞干网视频在线观看| 亚洲激情五月| 成年人免费观看的视频| 欧美日韩一二三四| 日韩国产美国| 欧美人与牛zoz0性行为| 国产精品zjzjzj在线观看| 亚洲三级电影在线观看| 黄色网zhan| 久久精品亚洲人成影院| 三级三级久久三级久久18| 免费视频一区三区| 欧美午夜免费| 国产一区二区欧美| 性欧美.com| 日韩在线二区| 国产又大又长又粗又黄| 欧美电影《睫毛膏》| 亚洲一区bb| 91亚洲一区| 日韩国产精品毛片| 亚洲欧美综合久久久| mm131午夜| 欧美jjzz| 欧美这里只有精品| 91久久久久| 日韩精品视频久久| 日韩黄色免费电影| 一本岛在线视频| 久久精品二区亚洲w码| 中文字幕色网站| 国产一区二区精品久久| 精品伦一区二区三区| 99久久99久久精品免费观看| 三级黄色片网站| 国产日产欧美一区二区三区| 日韩av网站在线播放| 亚洲精品大片www| 日韩免费视频网站| 日本韩国一区二区| 国产又黄又大又爽| 精品国精品国产| 户外极限露出调教在线视频| 中文字幕一精品亚洲无线一区| 黄色成人影院| 国模私拍视频一区| 韩国精品主播一区二区在线观看 | 日韩黄色在线视频| 日韩欧美有码在线| 国产精品无码AV| 亚洲精品久久久久久久久| av国产在线观看| 久久久亚洲国产天美传媒修理工| 精品国产免费人成网站| 91麻豆桃色免费看| 久久aimee| 亚洲欧洲日韩精品| 国自产拍偷拍福利精品免费一 | 性欧美1819sex性高清| 91九色精品视频| 亚洲激情播播| 免费观看国产视频在线| 国产日韩综合| 天堂av.com| 久久久久久久久久久99999| 国产在线一卡二卡| 欧美性生交大片免网| 国产av精国产传媒| 亚洲视频在线观看网站| 在线播放免费av| 国产日韩欧美日韩| 亚洲va久久| 日韩人妻无码精品久久久不卡| 久久精品国产亚洲a| 无码熟妇人妻av| 亚洲在线观看免费| 在线视频1卡二卡三卡| 亚洲精品久久在线| 欧美色图天堂| 成人国内精品久久久久一区| 免费成人网www| 日韩 欧美 视频| 狠狠色狠狠色综合系列| 亚洲ⅴ国产v天堂a无码二区| 欧美日韩国产专区| 国产91免费在线观看| 精品国产自在精品国产浪潮| 欧美最新精品| 韩国成人动漫在线观看| 欧美国产先锋| 日本女人黄色片| 亚洲欧洲99久久| 日本成人一级片| 亚洲欧美日韩天堂一区二区| av毛片午夜不卡高**水| 粉嫩av四季av绯色av第一区 | 精品无码一区二区三区在线| 国产美女一区二区| www.av免费| 欧美久久久久久久久| av资源网站在线观看| 国产成人av网址| 亚洲影院天堂中文av色| 播放灌醉水嫩大学生国内精品| 成人福利视频在线| 成人免费看片98| 亚洲第一黄色网| 国产高清中文字幕在线| 国产精品国产三级国产专区53 | 青青青草原在线| 97热在线精品视频在线观看| 国产一区二区三区不卡av| 国产色一区二区三区| 成人18视频日本| 日韩精品久久久久久久| 亚洲韩国青草视频| 国产乱码精品一区二三赶尸艳谈| 精品国产免费久久久久久尖叫| 亚洲二区精品| 亚洲欧美日本一区| 日韩欧美在线播放| www.91在线| 成人黄色短视频在线观看| 亚洲国产精品日韩专区av有中文| 欧美xxxxxbbbbb| 一区二区三区色| 黄色www视频| 欧美影院在线播放| 日本欧美肥老太交大片| 天堂在线一区二区三区| 一区二区三区不卡视频| 天天色综合久久| 国产精品久久久久久久久借妻| 日韩久久久久| 一级网站在线观看| 午夜久久久影院| 国模精品一区二区| 国产日韩精品在线播放| 欧美三区视频| 亚洲人人夜夜澡人人爽| 欧美亚洲国产一区在线观看网站| 免费av网站在线观看| 亚洲最大av网| 国产精品亚洲欧美| 国产真人真事毛片视频| 日韩精品自拍偷拍| 手机在线观看av| 亚洲一区二区三区涩| 成人禁用看黄a在线| 无码人妻精品一区二| 久久视频免费观看| 久久精品色综合| 在线观看岛国av| 亚洲超碰精品一区二区| 国产福利第一视频在线播放| 91在线视频免费| 国产精品呻吟| 性欧美疯狂猛交69hd| 日韩久久免费电影| 96视频在线观看欧美| 亚洲熟妇av一区二区三区漫画| 国产精品麻豆欧美日韩ww| 亚洲欧美另类日韩| 国产精品一区二区三区久久| 亚洲黄色一区| 精品无码一区二区三区蜜臀 | 18禁裸乳无遮挡啪啪无码免费| 在线成人午夜影院|