我已经使用Podio API将近一年了,而且很少遇到问题,但是我最近遇到了一个我无法弄清楚的问题。我甚至不知道如何测试发生了什么。当一个项目被创建时,我有一个脚本的webhook,它将向一个项目发送一个http GET请求并执行许多功能。脚本运行得很好,从来没有遇到过任何问题,除非我快速连续创建一些项目(15左右)。如果我等待一分钟左右,就开始工作了多次调用后跑道认证失败
2016-11-14 16:41:14 401 GET /item/514610204
2016-11-14 16:41:14 Reponse: {"error_parameters":{},"error_detail":null,"error_propagate":false,"request":{"url":"http:\/\/api.podio.com\/item\/514610204","query_string":"","method":"GET "},"error_description":"invalid_request","error":"unauthorized"}
:如果我这样做,有一定的数量将成功完成,然后我会突然有新呼叫收到以下错误。
我使用用户名和密码进行身份验证。有谁知道发生了什么事情或者如何检查发生了什么? podio.log在这种情况下没有帮助。
(更新) 问题是我打了认证请求率限制,因为我没有使用会话管理器。我现在试图做到这一点,但有问题。使用Redis setup我的代码如下:
require_once 'models/PodioRedisSession.php';
Podio::set_debug(true, 'file');
Podio::setup($client_id, $client_secret,array(
"session_manager" => "PodioRedisSession"
));
Podio::$auth_type = array(
"type" => "password",
"identifier" => "MY_EMAIL"
);
Podio::$oauth = self::$session_manager->get(Podio::$auth_type); //ERROR IS ON THIS LINE
if (!Podio::is_authenticated()) {
Podio::authenticate_with_password('MY_EMAIL', 'MY_PASSWORD');
}
使我有以下错误:无法访问自己::当无级范围是有效的。 我在正确的轨道上让会话管理员使用密码验证?该错误发生在注释行中。
(更新) 我终于能够让系统正常运行。上面的代码是正确的。服务器只需要重置(Windows服务器),以便Redis生效。
我很感谢你的帮助克里斯。我了解如何使用PHP在Podio中使用密码进行身份验证。我无法理解的是如何使用Redis存储Auth信息时使用密码进行身份验证。 [本页](http://podio.github.io/podio-php/sessions/)上提供的示例对我没有帮助,因为它使用的是应用程序而不是密码进行身份验证。 – Samson
我用我的代码的验证部分更新了我的问题 – Samson