我似乎无法使用任何示例应用。我正在尝试运行一个简单的websocket 101启动应用程序,除了将某些内容记录到控制台之外。
我的webroot C:\inetpub\wwwroot
中有cfws目录,我正在C:\inetpub\wwwroot\site\
工作。
我在cfadmin中启用了web套接字,使用“use proxy”选项,端口8579。
我正在运行的代码是:
index.cfm:
<html>
<head>
<title>Example One</title>
<script language="javascript">
function messageHandler(msg) {
console.log("messageHandler Run");
console.dir(msg);
}
</script>
</head>
<body>
<h1>Example One</h1>
</body>
</html>
<cfwebsocket name="myWS" onMessage="messageHandler" subscribeTo="news">
的Application.cfc
component {
this.name="cfwack2_1";
this.wschannels = [{name:"news"}];
}
我运行代码并且没有错误,但我没有在控制台中看到预期的日志。
到目前为止,我尝试的每个示例应用程序都没有五分之八。任何帮助表示赞赏。
答案 0 :(得分:0)
您的Application.cfc中可能有拼写错误。根据{{3}},它应该如下所示:
component {
this.name="cfwack2_1";
this.wschannels=[{name="news"}];
}
在=
之后:
(等号)而不是name
(冒号)。
该文档还显示JavaScript函数应接受事件和标记值。以下是文档中的示例。
<script type="text/javascript">
function mymessagehandler(aevent, atoken)
{
var message = ColdFusion.JSON.encode(atoken);
var txt=document.getElementById("myDiv");
txt.innerHTML +=message +"";
}
</script>
<cfwebsocket name="mycfwebsocketobject" onmessage="mymessagehandler" subscribeto="news">
<cfdiv id="myDiv"></cfdiv>