msgid ""
msgstr ""
"Project-Id-Version: English (Boost Beast Translation (zh_Hans))\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-06-07 18:37+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: English <https://insights.cppalliance.org/weblate/projects/"
"boost-beast-documentation-zh_Hans/doc-qbk-06-websocket-04-messages-qbk/en/>\n"
"Language: en\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 2026.5\n"

#. type: section title
#: 12
#, read-only
msgid "Messages"
msgstr "Messages"

#. type: paragraph
#: 14
#, read-only
msgid ""
"Once a websocket session is established, messages can be sent unsolicited by "
"either peer at any time. A message is made up of one or more ['messages "
"frames]. Each frame is prefixed with the size of the payload in bytes, "
"followed by the data. A frame also contains a flag (called 'fin') indicating "
"whether or not it is the last frame of the message. When a message is made "
"up from only one frame, it is possible to know immediately what the size of "
"the message will be. Otherwise, the total size of the message can only be "
"determined once the last frame is received."
msgstr ""
"Once a websocket session is established, messages can be sent unsolicited by "
"either peer at any time. A message is made up of one or more ['messages "
"frames]. Each frame is prefixed with the size of the payload in bytes, "
"followed by the data. A frame also contains a flag (called 'fin') indicating "
"whether or not it is the last frame of the message. When a message is made "
"up from only one frame, it is possible to know immediately what the size of "
"the message will be. Otherwise, the total size of the message can only be "
"determined once the last frame is received."

#. type: paragraph
#: 23
#, read-only
msgid ""
"The boundaries between frames of a multi-frame message are not not "
"considered part of the message. Intermediaries such as proxies which forward "
"the websocket traffic are free to \"reframe\" (split frames and combine "
"them) the message in arbitrary ways. These intermediaries include Beast, "
"which can reframe messages automatically in some cases depending on the "
"options set on the stream."
msgstr ""
"The boundaries between frames of a multi-frame message are not not "
"considered part of the message. Intermediaries such as proxies which forward "
"the websocket traffic are free to \"reframe\" (split frames and combine "
"them) the message in arbitrary ways. These intermediaries include Beast, "
"which can reframe messages automatically in some cases depending on the "
"options set on the stream."

#. type: paragraph
#: 30
#, read-only
msgid "An algorithm should never depend on the way that incoming or outgoing"
msgstr "An algorithm should never depend on the way that incoming or outgoing"

#. type: paragraph
#: 34
#, read-only
msgid ""
"Messages can be either text or binary. A message sent as text must contain "
"consist of valid utf8, while a message sent as binary may contain arbitrary "
"data. In addition to message frames, websocket provides ['control frames] in "
"the form of ping, pong, and close messages which have a small upper limit on "
"their payload size. Depending on how a message is framed, control frames may "
"have more opportunities to be sent in-between."
msgstr ""
"Messages can be either text or binary. A message sent as text must contain "
"consist of valid utf8, while a message sent as binary may contain arbitrary "
"data. In addition to message frames, websocket provides ['control frames] in "
"the form of ping, pong, and close messages which have a small upper limit on "
"their payload size. Depending on how a message is framed, control frames may "
"have more opportunities to be sent in-between."

#. type: heading
#: 41
#, read-only
msgid "Sending"
msgstr "Sending"

#. type: paragraph
#: 43
#, read-only
msgid "These stream members are used to write websocket messages:"
msgstr "These stream members are used to write websocket messages:"

#. type: table title
#: 45
#, read-only
msgid "WebSocket Stream Write Operations"
msgstr "WebSocket Stream Write Operations"

#. type: table cell
#: 45
#, read-only
msgctxt "45"
msgid "Function"
msgstr "Function"

#. type: table cell
#: 45
#, read-only
msgctxt "45"
msgid "Description"
msgstr "Description"

#. type: table cell
#: 45
#, read-only
msgid ""
"[link beast.ref.boost__beast__websocket__stream.write.overload2 `write`], "
"[link beast.ref.boost__beast__websocket__stream.async_write `async_write`]"
msgstr ""
"[link beast.ref.boost__beast__websocket__stream.write.overload2 `write`], "
"[link beast.ref.boost__beast__websocket__stream.async_write `async_write`]"

#. type: table cell
#: 45
#, read-only
msgid "Send a buffer sequence as a complete message."
msgstr "Send a buffer sequence as a complete message."

#. type: table cell
#: 45
#, read-only
msgid ""
"[link beast.ref.boost__beast__websocket__stream.write_some.overload2 "
"`write_some`], [link "
"beast.ref.boost__beast__websocket__stream.async_write_some "
"`async_write_some`]"
msgstr ""
"[link beast.ref.boost__beast__websocket__stream.write_some.overload2 "
"`write_some`], [link "
"beast.ref.boost__beast__websocket__stream.async_write_some "
"`async_write_some`]"

#. type: table cell
#: 45
#, read-only
msgid "Send a buffer sequence as part of a message."
msgstr "Send a buffer sequence as part of a message."

#. type: paragraph
#: 63
#, read-only
msgid "This example shows how to send a buffer sequence as a complete message."
msgstr "This example shows how to send a buffer sequence as a complete message."

#. type: paragraph
#: 67
#, read-only
msgid "The same message could be sent in two or more frames thusly."
msgstr "The same message could be sent in two or more frames thusly."

#. type: heading
#: 69
#, read-only
msgid "Receiving"
msgstr "Receiving"

#. type: table title
#: 71
#, read-only
msgid "WebSocket Stream Read Operations"
msgstr "WebSocket Stream Read Operations"

#. type: table cell
#: 71
#, read-only
msgctxt "71"
msgid "Function"
msgstr "Function"

#. type: table cell
#: 71
#, read-only
msgctxt "71"
msgid "Description"
msgstr "Description"

#. type: table cell
#: 71
#, read-only
msgid ""
"[link beast.ref.boost__beast__websocket__stream.read.overload2 `read`], "
"[link beast.ref.boost__beast__websocket__stream.async_read `async_read`]"
msgstr ""
"[link beast.ref.boost__beast__websocket__stream.read.overload2 `read`], "
"[link beast.ref.boost__beast__websocket__stream.async_read `async_read`]"

#. type: table cell
#: 71
#, read-only
msgid "Read a complete message into a __DynamicBuffer__."
msgstr "Read a complete message into a __DynamicBuffer__."

#. type: table cell
#: 71
#, read-only
msgid ""
"[link beast.ref.boost__beast__websocket__stream.read_some.overload2 "
"`read_some`], [link "
"beast.ref.boost__beast__websocket__stream.async_read_some.overload1 "
"`async_read_some`]"
msgstr ""
"[link beast.ref.boost__beast__websocket__stream.read_some.overload2 "
"`read_some`], [link "
"beast.ref.boost__beast__websocket__stream.async_read_some.overload1 "
"`async_read_some`]"

#. type: table cell
#: 71
#, read-only
msgid "Read part of a message into a __DynamicBuffer__."
msgstr "Read part of a message into a __DynamicBuffer__."

#. type: table cell
#: 71
#, read-only
msgid ""
"[link beast.ref.boost__beast__websocket__stream.read_some.overload4 "
"`read_some`], [link "
"beast.ref.boost__beast__websocket__stream.async_read_some.overload2 "
"`async_read_some`]"
msgstr ""
"[link beast.ref.boost__beast__websocket__stream.read_some.overload4 "
"`read_some`], [link "
"beast.ref.boost__beast__websocket__stream.async_read_some.overload2 "
"`async_read_some`]"

#. type: table cell
#: 71
#, read-only
msgid "Read part of a message into a __MutableBufferSequence__."
msgstr "Read part of a message into a __MutableBufferSequence__."

#. type: paragraph
#: 96
#, read-only
msgid ""
"After the WebSocket handshake is accomplished, callers may send and receive "
"messages using the message oriented interface. This interface requires that "
"all of the buffers representing the message are known ahead of time:"
msgstr ""
"After the WebSocket handshake is accomplished, callers may send and receive "
"messages using the message oriented interface. This interface requires that "
"all of the buffers representing the message are known ahead of time:"

#. type: heading
#: 108
#, read-only
msgid "Frames"
msgstr "Frames"

#. type: paragraph
#: 110
#, read-only
msgid ""
"Some use-cases make it impractical or impossible to buffer the entire "
"message ahead of time:"
msgstr ""
"Some use-cases make it impractical or impossible to buffer the entire "
"message ahead of time:"

#. type: list
#: 113
#, read-only
msgid ""
"* Streaming multimedia to an endpoint.\n"
"* Sending a message that does not fit in memory at once.\n"
"* Providing incremental results as they become available."
msgstr ""
"* Streaming multimedia to an endpoint.\n"
"* Sending a message that does not fit in memory at once.\n"
"* Providing incremental results as they become available."

#. type: paragraph
#: 117
#, read-only
msgid ""
"For these cases, the partial data oriented interface may be used. This "
"example reads and echoes a complete message using this interface:"
msgstr ""
"For these cases, the partial data oriented interface may be used. This "
"example reads and echoes a complete message using this interface:"
