ich mit Elixir
und Phoenix Framework
zum ersten Mal spiele nach diesen Tutorial folgende ..Elixir - Überprüfen Sie, ob String leer ist
Ich habe einen einfachen Client/Server-Anwendung.
Chat/lib/chat_web/room_channel.ex:
defmodule ChatWeb.RoomChannel do
use Phoenix.Channel
def join("room:lobby", _message, socket) do
{:ok, socket}
end
def join("room:" <> _private_room_id, _params, _socket) do
{:error, %{reason: "unauthorized"}}
end
def handle_in("new_msg", %{"body" => body}, socket) do
broadcast! socket, "new_msg", %{body: body}
{:noreply, socket}
end
end
ich leer eingehende Nachrichten blockieren möchten (body
ist leerer String)
def handle_in("new_msg", %{"body" => body}, socket) do
# I guess the code should be here..
broadcast! socket, "new_msg", %{body: body}
{:noreply, socket}
end
Wie kann ich das tun?
hat den Trick zu verwenden! Danke! –
Ist es möglich, eine Art von Fehler zurückzugeben, anstatt diese Nachrichten zu ignorieren? –
Ja, Sie können eine weitere Klausel für "body" => "" hinzufügen. Ich habe meine Antwort bearbeitet, um das zu berücksichtigen. – Dogbert