晚上做了下实验,Erlang端用{packet,2}格式,Flash端使用writeUTF和readUTF函数,正好格式一致,不需要自己解析两个字节长度信息。
Erlang端的代码:
-module(server).
-export([start/1, server_proc/1]).
start (Port) ->
{ok, Sock} = gen_tcp:listen(Port, [binary, {packet, 2}, {active, false}]),
server_loop(Sock).
server_loop (LSock) ->
{ok, Sock} = gen_tcp:accept(LSock),
spawn(?MODULE, server_proc, [Sock]),
server_loop(LSock).
server_proc (Sock) ->
Request = case gen_tcp:recv(Sock, 0) of
{ok, ReqBin} ->
binary_to_list(ReqBin);
{error, closed} ->
io:format("Client closed~n"), exit(closed);
{error, Reason} ->
io:format("Error: ~s~n", Reason), exit(Reason)
end,
io:format("Received: ~p~n", [Request]),
Response = "Done!",
gen_tcp:send(Sock, Response),
server_proc(Sock).
Flash端实验代码:
package
{
import flash.net.Socket;
import flash.display.Sprite;
import flash.events.ProgressEvent;
public class Main extends Sprite
{
private var sock:Socket;
public function Main ()
{
sock = new Socket();
sock.addEventListener(ProgressEvent.SOCKET_DATA, function (event:ProgressEvent):void
{
trace(sock.readUTF());
sock.close();
});
sock.connect("localhost", 10086);
sock.writeUTF("Hello World!");
sock.flush();
}
}
}
分享到:
相关推荐
- 使用yum安装Erlang:`sudo yum install erlang-23.3.4.3-1.el7.x86_64.rpm` 2. **安装RabbitMQ**: - 下载RabbitMQ RPM包:`wget https://your_download_link/rabbitmq-server-3.8.17-1.el7.noarch.rpm` - ...
erlang-20.3.8.17-1.el7.centos.x86_64
erlang-sd_notify-1.0-2.el7.x86_64.rpm
erlang-xmerl-22.3-1.el7.x86_64.rpm,rabbitMQ安装需要依赖此环境。Erlang 是一种多用途编程语言,主要用于开发并发和分布式系统。它最初是一种专有的编程语言,Ericsson 使用它来开发电话和通信应用程序。
erlang-xmerl-23.0.2-2.el7.x86_64.rpm,rabbitMQ安装需要依赖此环境。Erlang 是一种多用途编程语言,主要用于开发并发和分布式系统。它最初是一种专有的编程语言,Ericsson 使用它来开发电话和通信应用程序。
erlang-21.3.8.11-1.el6.x86_64.rpm
erlang-19.3.6.4-1.el
https://blog.51cto.com/7794482/2436678 可根据文档进行部署,redis+mysql+mq的插件 rabbitmq 安装时需要该插件
erlang-21.3.8.15-1.el7.x86_64.rpm
erlang-21.3.7.1-1.el7.x86_64.rpm rabbitmq基础语言环境。
对应rabbitmq 3.12.4,亲测可用
erlang-20.3.6-1.el7.centos.x86_64.rpm erlang-20.3.6-1.el7.centos.x86_64.rpm erlang-20.3.6-1.el7.centos.x86_64.rpm erlang-20.3.6-1.el7.centos.x86_64.rpm erlang-20.3.6-1.el7.centos.x86_64.rpm
esl-erlang_24.2.1-1_centos_7_amd64.rpm
linux基于centos7.x,erlang21.3.8.16资源适配rabbitmq3.8.5。欢迎大家下载!!!!
erlang-23.2.7-1.el7.x86_64 .rpm
配套rabbitmq-server-3.8.17-1.el8.noarch.rpm
erlang-23.2.6-1.el7.x86_64
rabbitmq安装前需要安装erlang包,如果没有erlang包,rabbitmp则无法下载成功
由于不同版本的rabbitmq需要的erlang版本不一样,但是官网已经无法下载,此版本的erlang适用于rabbitmq3.7.4-3.7.8,其余版本自查是否可用
erlang-erl_interface-19.3.6.4-1.el7.x86_64.rpm