You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MicroPython Asyncio服务端如何获取客户端IP地址

获取MicroPython异步Web服务器的客户端IP

核心方法

在MicroPython的异步Web服务场景里,你要的客户端IP可以通过请求关联的Stream对象(通常是writer或reader)的get_extra_info方法获取,关键是找到请求处理函数里的Stream实例。

具体操作

  • 你的APIHandling方法里,请求对象一般会带writer属性(对应给客户端发响应的流),这个就是可用的Stream对象。
  • 调用writer.get_extra_info('peername')会返回一个元组,第一个元素就是客户端的IP地址,第二个是端口号。

代码片段参考

async def APIHandling(request):
    # 提取客户端IP
    client_peername = request.writer.get_extra_info('peername')
    client_ip = client_peername[0]
    print(f"调用API的客户端IP: {client_ip}")
    
    # 这里写你的API业务逻辑
    # ...
    
    # 返回响应(根据你的服务器框架调整)
    return b"OK"

额外提示

如果你的请求对象里找不到writer,可以看看有没有transport属性,用transport.get_extra_info('peername')也能拿到同样的结果,MicroPython对这两种方式都支持。

内容的提问来源于stack exchange,提问作者kamp

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 19:21:09