我正在尝试使用 Golang 和 Angular JS 构建一个非常简单的网络应用程序(用于学习目的)。
我对 Go 和 AngularJS 代码很满意,但我在尝试创建合适的 API 结构时遇到困难。
目前,我已将运行该应用程序的所有代码和 API 代码捆绑在一起。
理想情况下,我想把它分开,这样我就可以让我的应用程序在 app.mything.com 等子域上运行,而 API 在 api.mything.com 上运行
我遇到的问题是我的 API 有 MYSQL 调用,例如 -
select * FROM sometable where userid = userID
userID 是保存在 session 中的用户 ID。
因此,虽然所有代码都捆绑在一起,但这是可能的并且工作正常。 如果我要将代码分离到两个单独的子域,则 session 将无法在两个子域上访问。
如何实现这样的目标?
谢谢 戴夫
最佳答案
有两种方法可以解决这个问题:
- 将 session 存储更改为 API 和应用共享的内容(即:MySQL)。
- 开始使用(加密的)cookie 而不是 session 数据。
关于API 设计 - 一个域上的应用程序,不同域上的 api。如何在不传递用户 ID 的情况下检索用户特定数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33310131/