From b256b245c7c01878486b975519a05b775752568e Mon Sep 17 00:00:00 2001 From: anlicheng <244108715@qq.com> Date: Fri, 31 Oct 2025 16:56:13 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B0=83=E6=95=B4=E5=BA=8F=E5=88=97=E5=8C=96?= =?UTF-8?q?=E7=AD=96=E7=95=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/efka/src/message/message_codec.erl | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/apps/efka/src/message/message_codec.erl b/apps/efka/src/message/message_codec.erl index e98f7f3..085d63e 100644 --- a/apps/efka/src/message/message_codec.erl +++ b/apps/efka/src/message/message_codec.erl @@ -34,10 +34,10 @@ encode0(#auth_reply{code = Code, payload = Payload}) -> marshal(?Bytes, Payload) ]); encode0(#jsonrpc_reply{result = Result, error = undefined}) -> - ResultBin = jiffy:encode(#{<<"result">> => Result}, [force_utf8]), + ResultBin = erlang:term_to_binary(#{<<"result">> => Result}), iolist_to_binary([marshal(?Bytes, ResultBin)]); encode0(#jsonrpc_reply{result = undefined, error = Error}) -> - ResultBin = iolist_to_binary(jiffy:encode(#{<<"error">> => Error}, [force_utf8])), + ResultBin = erlang:term_to_binary(#{<<"error">> => Error}), iolist_to_binary([marshal(?Bytes, ResultBin)]); encode0(#pub{topic = Topic, content = Content}) -> iolist_to_binary([ @@ -51,7 +51,7 @@ encode0(#command{command_type = CommandType, command = Command}) -> ]); encode0(#jsonrpc_request{method = Method, params = Params}) -> - ReqBody = iolist_to_binary(jiffy:encode(#{<<"method">> => Method, <<"params">> => Params}, [force_utf8])), + ReqBody = erlang:term_to_binary(#{<<"method">> => Method, <<"params">> => Params}), marshal(?Bytes, ReqBody); encode0(#data{service_id = ServiceId, device_uuid = DeviceUUID, route_key = RouteKey, metric = Metric}) -> iolist_to_binary([ @@ -84,7 +84,7 @@ decode(<>) -> decode0(?MESSAGE_AUTH_REQUEST, [UUID, Username, Salt, Token, Timestamp]) -> {ok, #auth_request{uuid = UUID, username = Username, salt = Salt, token = Token, timestamp = Timestamp}}; decode0(?MESSAGE_JSONRPC_REPLY, [ReplyBin]) -> - case jiffy:decode(ReplyBin, [return_maps]) of + case erlang:binary_to_term(ReplyBin) of #{<<"result">> := Result} -> {ok, #jsonrpc_reply{result = Result}}; #{<<"error">> := Error} -> @@ -99,7 +99,7 @@ decode0(?MESSAGE_COMMAND, [CommandType, Command]) -> decode0(?MESSAGE_AUTH_REPLY, [Code, Payload]) -> {ok, #auth_reply{code = Code, payload = Payload}}; decode0(?MESSAGE_JSONRPC_REQUEST, [ReqBody]) -> - #{<<"method">> := Method, <<"params">> := Params} = jiffy:decode(ReqBody, [return_maps]), + #{<<"method">> := Method, <<"params">> := Params} = erlang:binary_to_term(ReqBody), {ok, #jsonrpc_request{method = Method, params = Params}}; decode0(?MESSAGE_DATA, [ServiceId, DeviceUUID, RouteKey, Metric]) -> {ok, #data{service_id = ServiceId, device_uuid = DeviceUUID, route_key = RouteKey, metric = Metric}}; @@ -118,10 +118,6 @@ decode0(_, _) -> marshal(?I32, Field) when is_integer(Field) -> <>; marshal(?Bytes, Field) when is_binary(Field) -> - Len = byte_size(Field), - <>; -marshal(?Bytes, Field0) -> - Field = unicode:characters_to_binary(Field0), Len = byte_size(Field), <>.