请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

获取验证码成功,但返回有问题

调用阿里的sdk 成功收到了验证码,但是index/send请求但状态一直是pending, 过段时间后会变成失败

https://img1.sycdn.imooc.com//szimg/5b0d226100019a0812160238.jpg

我试着print_r($response), 终端无输出。我怀疑Sms.php  有问题,但找不到问题在哪。

正在回答 回答被采纳积分+3

2回答

提问者 pplegend 2018-05-29 18:05:59

我又多次实验,发现问题出在redis上面:

public function redistest(){
    $redis = new \Swoole\Coroutine\Redis();
    //return 333;
    $redis->connect('127.0.0.1', 6379);
    $val = $redis->get('key');
    return $val;
}

用异步redis可以,用协程redis不行,协程 connect时请求就pending了,我写了个测试方法,如果在协程redis connect之前输出是没问题的,之后就会pending。如果说链接失败也不合理,因为redis中的数据是写进去的。

0 回复 有任何疑惑可以回复我~
singwa 2018-05-29 18:05:13

你好,你代码那块怎么写的?

0 回复 有任何疑惑可以回复我~
  • 提问者 pplegend #1
    $redis->set(Redis::smsKey(2222),333,300);
    应该是出在这,但不是很理解为啥
    回复 有任何疑惑可以回复我~ 2018-05-29 18:10:13
  • 提问者 pplegend #2
    用异步redis可以,用协程redis不行,协程 connect时请求就pending了
    回复 有任何疑惑可以回复我~ 2018-05-29 18:28:59
  • singwa 回复 提问者 pplegend #3
    那先用异步的。
    ,协程 connect还需要修改tp源码,你tp哪个版本的?
    回复 有任何疑惑可以回复我~ 2018-05-30 01:26:11
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信