如何获取Actix-Web中利率限制的IP地址



我正在尝试在WebSocket应用程序中基于IP地址实现速率限制者,但是我不知道如何将IP地址作为字符串获取。我一直在搜寻文档,没有提及IP地址。

我有一个addr: Recipient<WSMessage>和一个上下文。

到目前为止,我尝试了ctx.address()-无法转换为字符串 msg.addr.tx.0-不能启用私人。

弄清楚了:

fn chat_route(req: &HttpRequest<WsChatSessionState>) -> Result<HttpResponse, Error> {
    ws::start(
        req,
        WSSession {
            id: 0,
            hb: Instant::now(),
            ip: req.connection_info().remote().to_string(),
        },
    )
}

最新更新