今天看了一下关于“服务器推”技术的介绍,想去学习一下aflax技术,下载了它的demo,运行里面的“Socket Demo”不成功,调了IP也不成功,提示 “Could not make connection to server.”,不知道该怎么配置才能连的上服务器。找遍了就是没有找到什么文档,只有一些demo,demo里面又没有说明,不知道大家有没有学习资料。
下面是页面:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>AFLAX: The AJAX Library for the Adobe Flash&trade; Platform</title><LINK href='../../include/style.css' type='text/css' rel='stylesheet'><script type="text/javascript" src="../../lib/AFLAX/aflax.js"></script>
<script type="text/javascript" src="../../lib/MochiKit/MochiKit.js"></script><script>
var aflax = new AFLAX("../../lib/AFLAX/aflax.swf");
var connection = null;
var username = "Unknown";
var firstLine = true;

function go()
{
}

function onConnectEvent(val)
{
if(val)
appendData("Connection successful.");
else
appendData("Could not make connection to server.");
}

function onDataEvent(str)
{
var i = str.indexOf(":");
var name = str.substring(0, i);
var rest = str.substring(i+1);
var color = "blue";
if(name == username) color = "red";
appendData("<font color='" + color + "'>" + name + ':</font> ' + rest);
}

function onCloseEvent()
{
appendData("Connection closed.");
} function send(str)
{
connection.send(username + ': ' + str);
}

function showUI(name)
{
username = name;

var entry = document.getElementById("nameEntry");
entry.style.visibility = "hidden";
entry.style.display = "none"; var ui = document.getElementById("chatUI");
ui.style.visibility = "visible";
ui.style.display = "block"; connection = new AFLAX.Socket(aflax, "192.168.1.68", 7777, 
"onConnectEvent", "onDataEvent", "onCloseEvent");
}

function appendData(str)
{
var chat = document.getElementById("chat");
chat.innerHTML += str + "<BR>";
chat.scrollTop = chat.scrollHeight - chat.clientHeight;
}

</script></head><body style="background: #eeeeee;"> <div id="body">
<script type="text/javascript">
window.onload = function(){
roundElement("mainmenu");
roundElement("menu", {bgColor: "#eeeeee" });
}
</script> 

<table cellspacing="0" cellpadding="0" border="0" width="100%">
<tr align="left">
<td width="245"><img src="/aflax_logo_gray.gif"></td>
<td align="bottom">
<div id="mainmenu" class="menuBox">
&nbsp;
<a class="menuLink" href="/">Home</a>
<a class="menuLink" href="/#download">Download</a>
<a class="menuLink" href="/#demos">Demos</a>
<a class="menuLink" href="/#documentation">Documentation</a>
<a class="menuLink" href="/#support">Support</a>
<a class="menuLink" href="/wordpress/">Blog</a>
</div>
</td>
</tr>
</table>   
  <div id="menu">
<div id="toc">
<p>Sockets Demo - Chat Client</p>
</div>
  </div>
  
</div>
<div id="content"> <p>Socket Demo</p>

<p>Uses sockets to receive events (without polling!) from a chat server when others have sent a message. Also
allows you to send out messages.</p>

<div id="nameEntry">Please enter your name: <input size="30" value="" onkeyup="if(event.keyCode == 13) showUI(this.value);"></input></div>

<table id="chatUI" style="background: #dddddd; border:1px solid #CCCCCC;visibily:hidden;display:none">
<tr>
<td>
<div id="chat" style="overflow: auto; width:500px; height:300px"></div>
</td>
</tr>
<tr>
<td>
<input style="width:500px" onkeyup="if(event.keyCode == 13) { send(this.value); this.value=''; }">
</td>
</tr>
</table> <p>Note that this demo is doing no buffering on the data, so some lines may get
broken into two or more events.
</p>

<script>
aflax.insertFlash(1,1, "#ffffff", "go", true);
</script>

<p></p>

View source: <a href="../view-source/view-source.html#sockets/sockets.html" target="_blank">sockets.html</a>
<br>
View server source: <a href="../view-source/view-source.html#sockets/server.pl.html" target="_blank">server.pl</a>

</div>
</body>我已经把页面上的new AFLAX.Socket(aflax, "192.168.1.68", 7777, 换成了我自己的IP,但是还是连接不上。请大家帮忙指点一下,有资料的,希望能推荐一下,谢谢了。

解决方案 »

  1.   

    baidu,google全部找遍,都没找到解决办法。可能是这东西太偏门了吧,作者的官网都1年没更新了。
      

  2.   

    lz服务器端呢?
    socket连接至少需要一个server端接受吧
      

  3.   

    up服务器就是本机,本机IP192.168.1.68继续UP!
      

  4.   

    google一下你就知道了,资料很少.
      

  5.   

    其实服务器推还是setInterval/setTimeout+ajax的问题不过看你下的demo应该使用了flash的异步功能,可能需要flash的服务器Flash Communication Server来提供支持具体Flash Communication Server的设定楼主可以去google/baidu下
      

  6.   

    谢谢~我明白了。flash的版本更新也是一个问题。只是希望有人能介绍一下aflax,这种技术挺好的。
      

  7.   

    如果不用flash服务器推就是setInterval/setTimeout+ajax建立长连接,就起了个好听的名字而已
    如果是flash的话,使用Flash Communication Server可以建立tcp连接,使用socket来的,具体怎么搞不知道了,这个是as编程的了。以前看过下as,现在忘记了,也和flash版本有关。
      

  8.   

    那个是as2做的吧, 里头的例子我测试过的,你要把服务器端的perl脚本跑起来就可以连接上去了;
      

  9.   

    如果是用asp.net该怎么搞?望指点一下,呵呵~
      

  10.   

    connection = new AFLAX.Socket(aflax, "192.168.1.68", 7777, 
    "onConnectEvent", "onDataEvent", "onCloseEvent"); 
    } 这一句中的7777端口链接失败
      

  11.   

    各位朋友,我现在也用这个东东,目前:
    connection = new AFLAX.Socket(aflax, "192.168.1.68", 7777,  
    "onConnectEvent", "onDataEvent", "onCloseEvent");  
    }这一句,网页就报错:
    this.getFlash() 为空或不是对象,有人知道怎么解决吗,谢谢
      

  12.   

    楼上的,你路径错了,是在包含aflax.js的时候,不是AFLAX文件夹的,是小写的aflax,并且连上服务器时,服务器需要发送给flash一个安全策略文件或字符串