2012-09-21 100 views
0

使用Symfony 2.0和FOSOAuthServerBundle实现API Rest,我遇到了一些麻烦。FOSOAuthServerBundle - 授权码已过期

我已经全部配置好了。我有一个正确创建的客户端,我试图通过网络浏览器来测试这个东西(尽管最终的目标是使用iOS应用程序的API表单)。

这些步骤如下:

  1. 获取授权码:一切顺利,我得到插入到数据库中的授权码和发动机返回。完美
  2. 获取令牌:这里是问题出现的地方。生成代码(上一步)时,会分配一个expiresAt字段。当我走到这一步

    public function hasExpired() { if ($this->expiresAt) { return time() > $this->expiresAt; } }

它进行比较,并返回true,即代码关闭(过期)。而且,正因为如此,我得到在浏览器的情况如下:

{"error":"invalid_grant","error_description":"The authorization code has expired"} 

在此任何线索之前,我开始乱了这一切?

谢谢。

回答

0

好吧,算了吧。

问题就在于授权代码的生成(第一步)和生成安全性令牌(第二步)之间的时间超过了30秒。这是因为我正在调试它,看看发生了什么。

对不起。我希望这可以帮助任何人。