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

#. type: section title
#: 10
msgid "Examples"
msgstr "示例"

#. type: paragraph
#: 13
msgid ""
"Source code and build scripts for these programs are located in the "
"[path_link example example] directory."
msgstr "这些程序的源码和编译脚本存放在 [path_link example example] 目录里。"

#. type: section title
#: 18
msgid "Clients"
msgstr "客户端"

#. type: paragraph
#: 20
msgid ""
"These HTTP clients submit a GET request to a server specified on the command "
"line, and prints the resulting response. The crawl client asynchronously "
"fetches the document root of the 10,000 top ranked domains, this may be used "
"to evaluate robustness. All asynchronous clients support timeouts."
msgstr ""
"这些 HTTP 客户端会向命令行指定的服务器发送 GET 请求，并输出返回结果。爬取客户"
"端会异步抓取排名前 10000 的站点的文档根目录，可用于评估程序的健壮性。所有异步"
"客户端都支持超时设置。"

#. type: table cell
#: 25
msgctxt "25"
msgid "HTTP, synchronous"
msgstr "HTTP 同步"

#. type: table cell
#: 25
msgid ""
"[path_link example/http/client/sync/http_client_sync.cpp "
"http_client_sync.cpp]"
msgstr ""
"[path_link example/http/client/sync/http_client_sync.cpp "
"http_client_sync.cpp]"

#. type: table cell
#: 25
msgid ""
"[path_link example/http/client/sync-ssl/http_client_sync_ssl.cpp "
"http_client_sync_ssl.cpp]"
msgstr ""
"[path_link example/http/client/sync-ssl/http_client_sync_ssl.cpp "
"http_client_sync_ssl.cpp]"

#. type: table cell
#: 25
msgctxt "25"
msgid "HTTP, asynchronous"
msgstr "HTTP 异步"

#. type: table cell
#: 25
msgid ""
"[path_link example/http/client/async/http_client_async.cpp "
"http_client_async.cpp]"
msgstr ""
"[path_link example/http/client/async/http_client_async.cpp "
"http_client_async.cpp]"

#. type: table cell
#: 25
msgid ""
"[path_link example/http/client/async-ssl/http_client_async_ssl.cpp "
"http_client_async_ssl.cpp]"
msgstr ""
"[path_link example/http/client/async-ssl/http_client_async_ssl.cpp "
"http_client_async_ssl.cpp]"

#. type: table cell
#: 25
msgctxt "25"
msgid "HTTP, asynchronous Unix domain sockets"
msgstr "HTTP 异步 Unix 域套接字"

#. type: table cell
#: 25
msgid ""
"[path_link example/http/client/async-local/http_client_async_local.cpp "
"http_client_async_local.cpp]"
msgstr ""
"[path_link example/http/client/async-local/http_client_async_local.cpp "
"http_client_async_local.cpp]"

#. type: table cell
#: 25
msgid "HTTP, asynchronous using __system_executor__"
msgstr "使用 __system_executor__ 的 HTTP 异步模式"

#. type: table cell
#: 25
msgid ""
"[path_link example/http/client/async-ssl-system-executor/"
"http_client_async_ssl_system_executor.cpp "
"http_client_async_ssl_system_executor.cpp]"
msgstr ""
"[path_link example/http/client/async-ssl-system-executor/"
"http_client_async_ssl_system_executor.cpp "
"http_client_async_ssl_system_executor.cpp]"

#. type: table cell
#: 25
msgctxt "25"
msgid "HTTP, coroutine"
msgstr "HTTP 协程"

#. type: table cell
#: 25
msgid ""
"[path_link example/http/client/coro/http_client_coro.cpp "
"http_client_coro.cpp]"
msgstr ""
"[path_link example/http/client/coro/http_client_coro.cpp "
"http_client_coro.cpp]"

#. type: table cell
#: 25
msgid ""
"[path_link example/http/client/coro-ssl/http_client_coro_ssl.cpp "
"http_client_coro_ssl.cpp]"
msgstr ""
"[path_link example/http/client/coro-ssl/http_client_coro_ssl.cpp "
"http_client_coro_ssl.cpp]"

#. type: table cell
#: 25
msgid "HTTP, C++20 coroutine"
msgstr "HTTP C++20 协程"

#. type: table cell
#: 25
msgid ""
"[path_link example/http/client/awaitable/http_client_awaitable.cpp "
"http_client_awaitable.cpp]"
msgstr ""
"[path_link example/http/client/awaitable/http_client_awaitable.cpp "
"http_client_awaitable.cpp]"

#. type: table cell
#: 25
msgid ""
"[path_link example/http/client/awaitable-ssl/http_client_awaitable_ssl.cpp "
"http_client_awaitable_ssl.cpp]"
msgstr ""
"[path_link example/http/client/awaitable-ssl/http_client_awaitable_ssl.cpp "
"http_client_awaitable_ssl.cpp]"

#. type: table cell
#: 25
msgid "HTTP crawl (asynchronous)"
msgstr "HTTP 爬取（异步）"

#. type: table cell
#: 25
msgid "[path_link example/http/client/crawl/http_crawl.cpp http_crawl.cpp]"
msgstr "[path_link example/http/client/crawl/http_crawl.cpp http_crawl.cpp]"

#. type: table cell
#: 25
msgid "HTTP json_body (synchronous)"
msgstr "HTTP json_body（同步）"

#. type: table cell
#: 25
msgid ""
"[path_link example/http/client/body/json_body.hpp json_body.hpp] [path_link "
"example/http/client/body/json_client.cpp json_client.cpp]"
msgstr ""
"[path_link example/http/client/body/json_body.hpp json_body.hpp] [path_link "
"example/http/client/body/json_client.cpp json_client.cpp]"

#. type: table cell
#: 25
msgid "HTTP client for all methods (synchronous)"
msgstr "HTTP client for all methods (synchronous)"

#. type: table cell
#: 25
msgid ""
"[path_link example/http/client/methods/http_client_methods.cpp "
"http_client_methods.cpp]"
msgstr ""
"[path_link example/http/client/methods/http_client_methods.cpp "
"http_client_methods.cpp]"

#. type: paragraph
#: 68
msgid ""
"These WebSocket clients connect to a server and send a message, then receive "
"a message and print the response before disconnecting. All asynchronous "
"clients support timeouts."
msgstr ""
"这些 WebSocket 客户端会先连接服务器，发一条消息，收到回复后打印结果，最后断开"
"连接。所有异步客户端都支持设置超时时间。"

#. type: table cell
#: 72
msgctxt "72"
msgid "WebSocket, synchronous"
msgstr "WebSocket 同步"

#. type: table cell
#: 72
msgid ""
"[path_link example/websocket/client/sync/websocket_client_sync.cpp "
"websocket_client_sync.cpp]"
msgstr ""
"[path_link example/websocket/client/sync/websocket_client_sync.cpp "
"websocket_client_sync.cpp]"

#. type: table cell
#: 72
msgid ""
"[path_link example/websocket/client/sync-ssl/websocket_client_sync_ssl.cpp "
"websocket_client_sync_ssl.cpp]"
msgstr ""
"[path_link example/websocket/client/sync-ssl/websocket_client_sync_ssl.cpp "
"websocket_client_sync_ssl.cpp]"

#. type: table cell
#: 72
msgctxt "72"
msgid "WebSocket, asynchronous"
msgstr "WebSocket 异步"

#. type: table cell
#: 72
msgid ""
"[path_link example/websocket/client/async/websocket_client_async.cpp "
"websocket_client_async.cpp]"
msgstr ""
"[path_link example/websocket/client/async/websocket_client_async.cpp "
"websocket_client_async.cpp]"

#. type: table cell
#: 72
msgid ""
"[path_link example/websocket/client/async-ssl/websocket_client_async_ssl.cpp "
"websocket_client_async_ssl.cpp]"
msgstr ""
"[path_link example/websocket/client/async-ssl/websocket_client_async_ssl.cpp "
"websocket_client_async_ssl.cpp]"

#. type: table cell
#: 72
msgctxt "72"
msgid "WebSocket, asynchronous Unix domain sockets"
msgstr "WebSocket 异步 Unix 域套接字"

#. type: table cell
#: 72
msgid ""
"[path_link example/websocket/client/async-local/"
"websocket_client_async_local.cpp websocket_client_async_local.cpp]"
msgstr ""
"[path_link example/websocket/client/async-local/"
"websocket_client_async_local.cpp websocket_client_async_local.cpp]"

#. type: table cell
#: 72
msgid "WebSocket, asynchronous using __system_executor__"
msgstr "使用 __system_executor__ 的 WebSocket 异步模式"

#. type: table cell
#: 72
msgid ""
"[path_link example/websocket/client/async-ssl-system-executor/"
"websocket_client_async_ssl_system_executor.cpp "
"websocket_client_async_ssl_system_executor.cpp]"
msgstr ""
"[path_link example/websocket/client/async-ssl-system-executor/"
"websocket_client_async_ssl_system_executor.cpp "
"websocket_client_async_ssl_system_executor.cpp]"

#. type: table cell
#: 72
msgctxt "72"
msgid "WebSocket, coroutine"
msgstr "WebSocket 协程"

#. type: table cell
#: 72
msgid ""
"[path_link example/websocket/client/coro/websocket_client_coro.cpp "
"websocket_client_coro.cpp]"
msgstr ""
"[path_link example/websocket/client/coro/websocket_client_coro.cpp "
"websocket_client_coro.cpp]"

#. type: table cell
#: 72
msgid ""
"[path_link example/websocket/client/coro-ssl/websocket_client_coro_ssl.cpp "
"websocket_client_coro_ssl.cpp]"
msgstr ""
"[path_link example/websocket/client/coro-ssl/websocket_client_coro_ssl.cpp "
"websocket_client_coro_ssl.cpp]"

#. type: table cell
#: 72
msgid "WebSocket, C++20 coroutine"
msgstr "WebSocket C++20 协程"

#. type: table cell
#: 72
msgid ""
"[path_link example/websocket/client/awaitable/websocket_client_awaitable.cpp "
"websocket_client_awaitable.cpp]"
msgstr ""
"[path_link example/websocket/client/awaitable/websocket_client_awaitable.cpp "
"websocket_client_awaitable.cpp]"

#. type: section title
#: 104
msgid "Servers"
msgstr "服务器端"

#. type: paragraph
#: 106
msgid ""
"These HTTP servers deliver files from a root directory specified on the "
"command line. All asynchronous servers support timeouts."
msgstr ""
"这些 HTTP 服务器会从命令行指定的根目录中读取文件并提供给客户端。所有异步服务"
"器都支持设置超时时间。"

#. type: table cell
#: 109
msgctxt "109"
msgid "HTTP, synchronous"
msgstr "HTTP 同步"

#. type: table cell
#: 109
msgid ""
"[path_link example/http/server/sync/http_server_sync.cpp "
"http_server_sync.cpp]"
msgstr ""
"[path_link example/http/server/sync/http_server_sync.cpp "
"http_server_sync.cpp]"

#. type: table cell
#: 109
msgid ""
"[path_link example/http/server/sync-ssl/http_server_sync_ssl.cpp "
"http_server_sync_ssl.cpp]"
msgstr ""
"[path_link example/http/server/sync-ssl/http_server_sync_ssl.cpp "
"http_server_sync_ssl.cpp]"

#. type: table cell
#: 109
msgctxt "109"
msgid "HTTP, asynchronous"
msgstr "HTTP 同步"

#. type: table cell
#: 109
msgid ""
"[path_link example/http/server/async/http_server_async.cpp "
"http_server_async.cpp]"
msgstr ""
"[path_link example/http/server/async/http_server_async.cpp "
"http_server_async.cpp]"

#. type: table cell
#: 109
msgid ""
"[path_link example/http/server/async-ssl/http_server_async_ssl.cpp "
"http_server_async_ssl.cpp]"
msgstr ""
"[path_link example/http/server/async-ssl/http_server_async_ssl.cpp "
"http_server_async_ssl.cpp]"

#. type: table cell
#: 109
msgctxt "109"
msgid "HTTP, asynchronous Unix domain sockets"
msgstr "HTTP 异步 Unix 域套接字"

#. type: table cell
#: 109
msgid ""
"[path_link example/http/server/async-local/http_server_async_local.cpp "
"http_server_async_local.cpp]"
msgstr ""
"[path_link example/http/server/async-local/http_server_async_local.cpp "
"http_server_async_local.cpp]"

#. type: table cell
#: 109
msgctxt "109"
msgid "HTTP, coroutine"
msgstr "HTTP 协程"

#. type: table cell
#: 109
msgid ""
"[path_link example/http/server/coro/http_server_coro.cpp "
"http_server_coro.cpp]"
msgstr ""
"[path_link example/http/server/coro/http_server_coro.cpp "
"http_server_coro.cpp]"

#. type: table cell
#: 109
msgid ""
"[path_link example/http/server/coro-ssl/http_server_coro_ssl.cpp "
"http_server_coro_ssl.cpp]"
msgstr ""
"[path_link example/http/server/coro-ssl/http_server_coro_ssl.cpp "
"http_server_coro_ssl.cpp]"

#. type: table cell
#: 109
msgid "HTTP, stackless coroutine"
msgstr "HTTP 无栈协程"

#. type: table cell
#: 109
msgid ""
"[path_link example/http/server/stackless/http_server_stackless.cpp "
"http_server_stackless.cpp]"
msgstr ""
"[path_link example/http/server/stackless/http_server_stackless.cpp "
"http_server_stackless.cpp]"

#. type: table cell
#: 109
msgid ""
"[path_link example/http/server/stackless-ssl/http_server_stackless_ssl.cpp "
"http_server_stackless_ssl.cpp]"
msgstr ""
"[path_link example/http/server/stackless-ssl/http_server_stackless_ssl.cpp "
"http_server_stackless_ssl.cpp]"

#. type: table cell
#: 109
msgid "HTTP, C++ 20 coroutine"
msgstr "HTTP C++20 协程"

#. type: table cell
#: 109
msgid ""
"[path_link example/http/server/awaitable/http_server_awaitable.cpp "
"http_server_awaitable.cpp]"
msgstr ""
"[path_link example/http/server/awaitable/http_server_awaitable.cpp "
"http_server_awaitable.cpp]"

#. type: table cell
#: 109
msgid "HTTP, fast (optimized for speed)"
msgstr "HTTP 快速模式（速度优先）"

#. type: table cell
#: 109
msgid ""
"[path_link example/http/server/fast/http_server_fast.cpp "
"http_server_fast.cpp]"
msgstr ""
"[path_link example/http/server/fast/http_server_fast.cpp "
"http_server_fast.cpp]"

#. type: table cell
#: 109
msgid "HTTP, small (optimized for space)"
msgstr "HTTP 精简模式（空间优先）"

#. type: table cell
#: 109
msgid ""
"[path_link example/http/server/small/http_server_small.cpp "
"http_server_small.cpp]"
msgstr ""
"[path_link example/http/server/small/http_server_small.cpp "
"http_server_small.cpp]"

#. type: table cell
#: 109
msgid "HTTP, flex (plain + SSL)"
msgstr "HTTP 灵活模式（普通 + SSL）"

#. type: table cell
#: 109
msgid ""
"[path_link example/http/server/flex/http_server_flex.cpp "
"http_server_flex.cpp]"
msgstr ""
"[path_link example/http/server/flex/http_server_flex.cpp "
"http_server_flex.cpp]"

#. type: paragraph
#: 148
msgid ""
"These WebSocket servers echo back any message received, keeping the session "
"open until the client disconnects. All asynchronous servers support timeouts."
msgstr ""
"这些 WebSocket 服务器会把收到的任何消息原样返回，并且保持会话不断开，直到客户"
"端主动断开为止。所有异步服务器都支持设置超时时间。"

#. type: table cell
#: 152
msgctxt "152"
msgid "WebSocket, synchronous"
msgstr "WebSocket 同步"

#. type: table cell
#: 152
msgid ""
"[path_link example/websocket/server/sync/websocket_server_sync.cpp "
"websocket_server_sync.cpp]"
msgstr ""
"[path_link example/websocket/server/sync/websocket_server_sync.cpp "
"websocket_server_sync.cpp]"

#. type: table cell
#: 152
msgid ""
"[path_link example/websocket/server/sync-ssl/websocket_server_sync_ssl.cpp "
"websocket_server_sync_ssl.cpp]"
msgstr ""
"[path_link example/websocket/server/sync-ssl/websocket_server_sync_ssl.cpp "
"websocket_server_sync_ssl.cpp]"

#. type: table cell
#: 152
msgctxt "152"
msgid "WebSocket, asynchronous"
msgstr "WebSocket 异步"

#. type: table cell
#: 152
msgid ""
"[path_link example/websocket/server/async/websocket_server_async.cpp "
"websocket_server_async.cpp]"
msgstr ""
"[path_link example/websocket/server/async/websocket_server_async.cpp "
"websocket_server_async.cpp]"

#. type: table cell
#: 152
msgid ""
"[path_link example/websocket/server/async-ssl/websocket_server_async_ssl.cpp "
"websocket_server_async_ssl.cpp]"
msgstr ""
"[path_link example/websocket/server/async-ssl/websocket_server_async_ssl.cpp "
"websocket_server_async_ssl.cpp]"

#. type: table cell
#: 152
msgctxt "152"
msgid "WebSocket, asynchronous Unix domain sockets"
msgstr "WebSocket 异步 Unix 域套接字"

#. type: table cell
#: 152
msgid ""
"[path_link example/websocket/server/async-local/"
"websocket_server_async_local.cpp websocket_server_async_local.cpp]"
msgstr ""
"[path_link example/websocket/server/async-local/"
"websocket_server_async_local.cpp websocket_server_async_local.cpp]"

#. type: table cell
#: 152
msgctxt "152"
msgid "WebSocket, coroutine"
msgstr "WebSocket 协程"

#. type: table cell
#: 152
msgid ""
"[path_link example/websocket/server/coro/websocket_server_coro.cpp "
"websocket_server_coro.cpp]"
msgstr ""
"[path_link example/websocket/server/coro/websocket_server_coro.cpp "
"websocket_server_coro.cpp]"

#. type: table cell
#: 152
msgid ""
"[path_link example/websocket/server/coro-ssl/websocket_server_coro_ssl.cpp "
"websocket_server_coro_ssl.cpp]"
msgstr ""
"[path_link example/websocket/server/coro-ssl/websocket_server_coro_ssl.cpp "
"websocket_server_coro_ssl.cpp]"

#. type: table cell
#: 152
msgid "WebSocket, stackless coroutine"
msgstr "WebSocket 无栈协程"

#. type: table cell
#: 152
msgid ""
"[path_link example/websocket/server/stackless/websocket_server_stackless.cpp "
"websocket_server_stackless.cpp]"
msgstr ""
"[path_link example/websocket/server/stackless/websocket_server_stackless.cpp "
"websocket_server_stackless.cpp]"

#. type: table cell
#: 152
msgid ""
"[path_link example/websocket/server/stackless-ssl/"
"websocket_server_stackless_ssl.cpp websocket_server_stackless_ssl.cpp]"
msgstr ""
"[path_link example/websocket/server/stackless-ssl/"
"websocket_server_stackless_ssl.cpp websocket_server_stackless_ssl.cpp]"

#. type: table cell
#: 152
msgid "WebSocket, C++ 20 coroutine"
msgstr "WebSocket C++20 协程"

#. type: table cell
#: 152
msgid ""
"[path_link example/websocket/server/awaitable/websocket_server_awaitable.cpp "
"websocket_server_awaitable.cpp]"
msgstr ""
"[path_link example/websocket/server/awaitable/websocket_server_awaitable.cpp "
"websocket_server_awaitable.cpp]"

#. type: table cell
#: 152
msgid "WebSocket, fast (suited for benchmarks)"
msgstr "WebSocket 快速模式（适用于基准测试）"

#. type: table cell
#: 152
msgid ""
"[path_link example/websocket/server/fast/websocket_server_fast.cpp "
"websocket_server_fast.cpp]"
msgstr ""
"[path_link example/websocket/server/fast/websocket_server_fast.cpp "
"websocket_server_fast.cpp]"

#. type: section title
#: 188
msgid "Servers (Advanced)"
msgstr "服务器端（进阶篇）"

#. type: paragraph
#: 190
msgid ""
"These servers offer both HTTP and WebSocket services on the same port, and "
"illustrate the implementation of advanced features."
msgstr ""
"这些服务器在同一端口上同时提供 HTTP 和 WebSocket 服务，并展示了高级功能的实现"
"方式。"

#. type: table cell
#: 193
msgid "Advanced"
msgstr "进阶篇"

#. type: table cell
#: 193
msgid ""
"[itemized_list [Timeouts] [Multi-threaded] [HTTP pipelining] [Parser-"
"oriented HTTP reading] [Dual protocols: HTTP and WebSocket] [Clean exit via "
"SIGINT (CTRL+C) or SIGTERM (kill)] ]"
msgstr ""
"[itemized_list [Timeouts] [Multi-threaded] [HTTP pipelining] [Parser-"
"oriented HTTP reading] [Dual protocols: HTTP and WebSocket] [Clean exit via "
"SIGINT (CTRL+C) or SIGTERM (kill)] ]"

#. type: table cell
#: 193
msgid ""
"[path_link example/advanced/server/advanced_server.cpp advanced_server.cpp]"
msgstr ""
"[path_link example/advanced/server/advanced_server.cpp advanced_server.cpp]"

#. type: table cell
#: 193
msgid "Advanced, flex (plain + SSL)"
msgstr "进阶篇，灵活模式（普通 + SSL）"

#. type: table cell
#: 193
msgid ""
"[itemized_list [Timeouts] [Multi-threaded] [HTTP pipelining] [Parser-"
"oriented HTTP reading] [Dual protocols: HTTP and WebSocket] [Flexible ports: "
"plain and SSL on the same port] [Clean exit via SIGINT (CTRL+C) or SIGTERM "
"(kill)] ]"
msgstr ""
"[itemized_list [Timeouts] [Multi-threaded] [HTTP pipelining] [Parser-"
"oriented HTTP reading] [Dual protocols: HTTP and WebSocket] [Flexible ports: "
"plain and SSL on the same port] [Clean exit via SIGINT (CTRL+C) or SIGTERM "
"(kill)] ]"

#. type: table cell
#: 193
msgid ""
"[path_link example/advanced/server-flex/advanced_server_flex.cpp "
"advanced_server_flex.cpp]"
msgstr ""
"[path_link example/advanced/server-flex/advanced_server_flex.cpp "
"advanced_server_flex.cpp]"

#. type: table cell
#: 193
msgid "Advanced, flex (plain + SSL) with awaitable"
msgstr "进阶篇，灵活模式（普通 + SSL）支持可等待操作"

#. type: table cell
#: 193
msgid ""
"[itemized_list [Timeouts] [Multi-threaded] [HTTP pipelining] [Parser-"
"oriented HTTP reading] [Dual protocols: HTTP and WebSocket] [Flexible ports: "
"plain and SSL on the same port] [Clean exit via SIGINT (CTRL+C) or SIGTERM "
"(kill)] [Usage of cancellation_signals] ]"
msgstr ""
"[itemized_list [Timeouts] [Multi-threaded] [HTTP pipelining] [Parser-"
"oriented HTTP reading] [Dual protocols: HTTP and WebSocket] [Flexible ports: "
"plain and SSL on the same port] [Clean exit via SIGINT (CTRL+C) or SIGTERM "
"(kill)] [Usage of cancellation_signals] ]"

#. type: table cell
#: 193
msgid ""
"[path_link example/advanced/server-flex-awaitable/"
"advanced_server_flex_awaitable.cpp advanced_server_flex_awaitable.cpp]"
msgstr ""
"[path_link example/advanced/server-flex-awaitable/"
"advanced_server_flex_awaitable.cpp advanced_server_flex_awaitable.cpp]"

#. type: table cell
#: 193
msgid "Chat Server, multi-threaded"
msgstr "聊天服务器，多线程版"

#. type: table cell
#: 193
msgid ""
"[itemized_list [Multi-threaded] [Broadcasting Messages] [Multi-user Chat "
"Server] [JavaScript Browser Client] [Parser-oriented HTTP reading] [Dual "
"protocols: HTTP and WebSocket] [Clean exit via SIGINT (CTRL+C) or SIGTERM "
"(kill)] ]"
msgstr ""
"[itemized_list [Multi-threaded] [Broadcasting Messages] [Multi-user Chat "
"Server] [JavaScript Browser Client] [Parser-oriented HTTP reading] [Dual "
"protocols: HTTP and WebSocket] [Clean exit via SIGINT (CTRL+C) or SIGTERM "
"(kill)] ]"

#. type: table cell
#: 193
msgctxt "193"
msgid "[path_link example/websocket/server/chat-multi chat-multi]"
msgstr "[path_link example/websocket/server/chat-multi chat-multi]"

#. type: section title
#: 249
msgid "Chat Server __video__"
msgstr "聊天服务器 __视频__"

#. type: paragraph
#: 251
msgid ""
"This example demonstrates a websocket chat server, allowing multiple users "
"to connect and participate in live, group messaging. It comes with a tiny "
"front end implemented in JavaScript and HTML5 which runs in any browser. The "
"example is accompanied by a one hour presentation which provides a "
"discussion of networking concepts, followed by in-depth explanation of how "
"the client and server are constructed. This talk was delivered at [@https://"
"cppcon.org CppCon 2018]. The source code in the Beast example contains "
"improvements to the original program."
msgstr ""
"这个示例展示了一个 WebSocket 聊天服务器，支持多个用户同时连接并参与实时群聊。"
"它附带了一个用 JavaScript 和 HTML5 实现的小型前端界面，可以在任意浏览器中运行"
"。该示例还配有一小时的演讲视频，内容包括网络概念讲解，以及客户端和服务器实现"
"细节的深度剖析。该演讲于 [@https://cppcon.org CppCon 2018] 上发布。Beast 示例"
"中的源码相比原始程序有所改进。"

#. type: table title
#: 260
msgid "Chat WebSocket Server and JavaScript Client"
msgstr "WebSocket 聊天服务器与 JavaScript 客户端"

#. type: table cell
#: 260
msgid "Component"
msgstr "组件"

#. type: table cell
#: 260
msgid "Features"
msgstr "特性"

#. type: table cell
#: 260
msgid "Sources"
msgstr "源码"

#. type: table cell
#: 260
msgid "Server"
msgstr "服务器"

#. type: table cell
#: 260
msgid ""
"[itemized_list [C++] [Timeouts] [Multi-threaded] [Broadcast to multiple "
"peers] [Dual protocols: HTTP and WebSocket] [Clean exit via SIGINT (CTRL+C) "
"or SIGTERM (kill)] ]"
msgstr ""
"[itemized_list [C++] [Timeouts] [Multi-threaded] [Broadcast to multiple "
"peers] [Dual protocols: HTTP and WebSocket] [Clean exit via SIGINT (CTRL+C) "
"or SIGTERM (kill)] ]"

#. type: table cell
#: 260
msgctxt "260"
msgid "[path_link example/websocket/server/chat-multi chat-multi]"
msgstr "[path_link example/websocket/server/chat-multi chat-multi]"

#. type: table cell
#: 260
msgid "Client"
msgstr "客户端"

#. type: table cell
#: 260
msgid ""
"[itemized_list [JavaScript / HTML5] [Runs in the browser] [Delivered by the "
"server] [Only 60 lines total including UI] [Completely portable graphics] ]"
msgstr ""
"[itemized_list [JavaScript / HTML5] [Runs in the browser] [Delivered by the "
"server] [Only 60 lines total including UI] [Completely portable graphics] ]"

#. type: table cell
#: 260
msgid ""
"[path_link example/websocket/server/chat-multi/chat_client.html "
"chat_client.html]"
msgstr ""
"[path_link example/websocket/server/chat-multi/chat_client.html "
"chat_client.html]"
