如何创建Django通道视图?

2 投票
1 回答
607 浏览
提问于 2025-04-16 02:18

我想创建一个Django视图,完成以下几个步骤:

  • 接收一个来自 api/some/url/or/otherHttpRequest 请求
  • 把这个请求转发到另一个服务器,地址是 some/url/or/other(也就是修改一下网址)
    • 根据Django中的会话数据添加一个cookie
    • 使用和原始请求中相同的方法、数据、参数等
  • 把API调用的响应原封不动地返回给用户
    • 必须把从调用中返回的cookies存储在会话中
    • 必须在返回的 HttpResponse 中包含Django的会话cookie

Django中有哪些现成的工具可以用来实现这个功能?

1 个回答

1

没有。

你需要自己写一个工具,使用 httpliburlliburllib2 这些库来连接到另一个服务器。
很可能你需要从 HttpRequest 对象中提取所有相关的信息,然后用这些信息手动构建你自己的请求,放在这个工具函数里。

至于如何接收来自那个服务器的响应,这要看你是需要异步接收还是几乎同步接收。

撰写回答