【问题标题】:Correct way to pass data from one view to another in django?在 django 中将数据从一个视图传递到另一个视图的正确方法?
【发布时间】:2018-04-26 17:58:33
【问题描述】:

目前我正在尝试使用 Django 构建一个从 fitbit 提取数据的应用程序。我正在使 Oauth2.0 连接正常工作。

所以我从一堆用户输入中生成了一个授权 url:fitbit url、fitbit api、fitbit 客户端 ID、fitbit 客户端密码和重定向 url。生成并访问链接后,fitbit 会在 URL 中返回访问代码,例如:https://localhost:8000/?code=#=

我能够提取访问代码,但我不确定在新重定向的视图中获取先前用户输入数据的正确方法是什么。我能想到的一种方法是将第一个用户输入保存到数据库中,然后在使用新访问代码重定向时将其拉出。但我不确定还有哪些其他选项可用,以及这样做的标准方法是什么。

我还是 django 的新手,所以任何帮助表示赞赏。

谢谢!

【问题讨论】:

  • 你应该先发布你测试过的东西
  • 对不起,你什么意思?
  • 我看到两种可能:通过GET参数传递数据,它有很多缺点,主要与安全有关,因为用户可以随意操作它,另一种方法是使用消息框架(docs.djangoproject.com/en/2.0/ref/contrib/messages ) 或 django-flash(danielfm.me/django-flash/usage.html)
  • 嗯我认为也许保存到数据库然后再次提取信息可能是最安全的方式

标签: python django fitbit


【解决方案1】:

如果数据不敏感,您可以传入 URL 查询参数,否则您可以使用会话值。

【讨论】:

  • 即使用户从应用程序被重定向到 fitbit 授权页面并返回应用程序,这是否有效?
  • 一个会话将保持价值,直到你不弹出
猜你喜欢
  • 1970-01-01
  • 2020-02-10
  • 2015-10-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多