关于如何记录Websocket API的建议
我用socket.io编写了一个Websocket-API。
  假设建立连接后,服务器将等待一个login事件,其中有一个像{username: String, password: String}这样的有效载荷。 
  然后服务器回答事件login:accept或login:deny 。 
  只有当登录成功时,服务器才会响应一个事件tweets:get一个事件tweets (包含一个tweet作为负载数组)。 
是否有像这样的文档API的标准化方式? 你有什么建议和经验?
有AsyncApi节点工具来创建机器可读的定义,它与swagger非常相似,但是对于异步API,并且有工具可以生成诸如AsyncApi docgen和widdershins之类的HTML。
  作为示例,您可以使用yaml或json构建文档: 
asyncapi: "1.0.0"
topics:
    "tweets:get":
        publish:
            $ref: "#/components/messages/getTweets"
    tweets:
        subscribe:
            $ref: "#/components/messages/tweetsList"
  其中topics = events ,在socket.io中, publish = emit和subscribe = on 
  之后说,使用socket.io的认证主要依赖于令牌,用户将在连接启动时在options.query中发送认证令牌,并在后端对令牌进行认证,然后在认证失败的情况下断开连接。  无需login:accept或login:deny 
const socket = io('http://localhost?token=abc');
// or
const socket = io({ query: { token: 'cde' } });
