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

如何使用Julia的HTTP.WebSockets处理带路径与查询字符串的URL?

处理WebSocket URL的路径与查询参数解析

直接上可行的解决方案:

在WebSocket的监听回调里,通过请求对象的target字段拿到完整的路径+查询字符串,再用Elixir标准库的URI模块解析:

Websockets.listen("0.0.0.0", 4000) do ws
  # 拿到请求的目标部分,比如 "/v1/user-stream?id=1"
  target = ws.request.target
  uri = URI.parse(target)
  
  # 提取路径
  path = uri.path # 结果是 "/v1/user-stream"
  # 解析查询参数为键值对
  query_params = URI.decode_query(uri.query) # 结果是 %{"id" => "1"}
end

关于你之前路径为空的问题

你用ws.request.url.path拿不到内容,大概率是ws.request.url这个字段没有正确包含完整的路径信息,或者它的结构和你预期的不一样。改用request.target获取原始的路径字符串,再用标准库的URI.parse解析,就能稳定拿到路径和查询参数了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.20 02:15:05