收藏
回答

企业微信开发调用获取用户信息接口会间歇性报Connection timed out 错误。

  1. 企业微信开发调用getUserInfo 接口会间歇性报错: Failed to connect to qyapi.weixin.qq.com port 443: Connection timed out
  2. 不是所有请求都会报错,而是间歇性报错。比如有时候几百次请求中会有三四次报错。目前的临时解决办法是如果有报错就再重新去请求下接口,这样基本能暂时解决问题。
  3. 请求代码如下:
public static function vGet($access_token, $code)
    {
        $ch = curl_init();


        curl_setopt($ch, CURLOPT_URL, 'https://qyapi.weixin.qq.com/cgi-bin/user/getuserinfo?access_token=' . $access_token . '&code=' . $code);


        curl_setopt($ch, CURLOPT_POST, false);
        curl_setopt($ch, CURLOPT_HEADER, false);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
        curl_setopt($ch, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4);
        curl_setopt($ch, CURLOPT_ACCEPT_ENCODING, "gzip,deflate");
        $return_data = curl_exec($ch);
        if($return_data === false)
        {
            \think\facade\Log::write('curl error' . curl_error($ch), 'error');
        }
        curl_close($ch);
        \think\facade\Log::write('getUserInfo' . $return_data, 'debug');
        return $return_data;
    }

回答关注问题邀请回答
收藏

4 个回答

  • 企业微信运营专员-千夜
    企业微信运营专员-千夜
    2020-01-06

    您好,请问调用到其他接口时是否也会有超时情况出现呢

    2020-01-06
    有用
    回复 5
    • 猴子请来的救兵
      猴子请来的救兵
      2020-01-06
      其他的用到了获取access_token, message(消息发送)等接口都正常没有超时了。而且发现获取access_token 接口用户基本都不超过500ms,但是getUserInfo 接口的耗时要平均都在1s以上了。昨天内测一共有几百次测试请求有四次getUserInfo接口报time out 了
      2020-01-06
      回复
    • 企业微信运营专员-千夜
      企业微信运营专员-千夜
      2020-01-06回复猴子请来的救兵
      这个可能要看具体情况来定,到时可以提供下请求的公网ip地址和corpid我们查下日志
      2020-01-06
      回复
    • 猴子请来的救兵
      猴子请来的救兵
      2020-01-06回复企业微信运营专员-千夜
      corpid: wx2c61d46aa85439e1  公网ip:122.225.71.58 。今天目前没发生这种情况了。昨天下午4:25 到5:10之间发生了12次。
      2020-01-06
      回复
    • 企业微信运营专员-千夜
      企业微信运营专员-千夜
      2020-01-06回复猴子请来的救兵
      您好,查了下没发现有连接上来的,因为这个不是长连接,也看不到连接断开的原因,你们检查下本地的网络环境是否有波动造成的呢
      2020-01-06
      回复
    • 不忘初心
      不忘初心
      2022-03-22回复企业微信运营专员-千夜
      我这边问题跟这位兄弟一样,获取企微群详情接口(https://qyapi.weixin.qq.com/cgi-bin/externalcontact/groupchat/get)间歇性报错,我这边是用连接池请求的,刚开始在网上看到说微信接口超时时间是20s,建议把连接池超时时间改成15s,结果发现还是不行,请问下这种情况到底是什么原因,另外你说的”这个不是长连接“是什么意思
      2022-03-22
      回复
  • 平凡先生
    平凡先生
    2020-12-04

    遇到同样的问题,请问当时有最终定位到原因吗?

    2020-12-04
    有用
    回复
  • 阿白
    阿白
    2020-05-25

    我也是觉得奇怪,经常出现请求不到数据的情况

    curl返回的错误信息是 resolving timed out after 1509

    错误码是 28

    CURLE_OPERATION_TIMEDOUT (28)

    Operation timeout. The specified time-out period was reached according to the conditions.


    2020-05-25
    有用
    回复
  • 小张东东和友友
    小张东东和友友
    2020-03-17

    您好我们这边也遇到获取token接口超时情况,请问能帮忙查下什么原因吗?


    2020-03-17
    有用
    回复
登录 后发表内容
问题标签