修改微信access_token

This commit is contained in:
wucongxing 2023-05-16 17:10:02 +08:00
parent c3ce0af2db
commit bcde789d7f
5 changed files with 38 additions and 3 deletions

View File

@ -3,13 +3,14 @@
namespace App\Controller;
use App\Amqp\Producer\AssignDoctorDelayDirectProducer;
use App\Amqp\Producer\AssignDoctorProducer;
use App\Amqp\Producer\AutoCompleteInquiryDelayDirectProducer;
use App\Amqp\Producer\AutoFinishInquiryDelayDirectProducer;
use App\Amqp\Producer\CancelUnpayOrdersDelayDirectProducer;
use App\Amqp\Producer\SendSmsMessageProducer;
use App\Constants\HttpEnumCode;
use App\Exception\BusinessException;
use App\Factory\CacheFactory;
use App\Factory\ProdRedisFactory;
use App\Model\DoctorInquiryTime;
use App\Model\HospitalDepartmentCustom;
use App\Model\OrderInquiryCase;
@ -49,6 +50,7 @@ use Hyperf\Redis\Redis;
use Hyperf\Utils\ApplicationContext;
use Hyperf\Utils\Coroutine\Concurrent;
use Intervention\Image\ImageManager;
use Psr\SimpleCache\CacheInterface;
use Spatie\PdfToImage\Pdf;
use Swoole\Coroutine;
use Swoole\Coroutine\Channel;
@ -331,5 +333,8 @@ class TestController extends AbstractController
}
public function test_15(){
// $wechat = new Wechat(1);
// $a = $wechat->getAccessToken();
// dump($a);
}
}

View File

@ -0,0 +1,19 @@
<?php
namespace App\Driver;
use App\Factory\ProdRedisFactory;
use Hyperf\Cache\Driver\RedisDriver;
use Hyperf\Redis\Redis;
use Psr\Container\ContainerInterface;
class ProdRedisDriver extends RedisDriver
{
public function __construct(ContainerInterface $container, array $config)
{
parent::__construct($container, $config);
$this->redis = $container->get(ProdRedisFactory::class);
}
}

View File

@ -2,6 +2,7 @@
namespace App\Factory;
use Hyperf\Redis\Pool\PoolFactory;
use Hyperf\Redis\Redis;
class ProdRedisFactory extends Redis

View File

@ -9,10 +9,19 @@ declare(strict_types=1);
* @contact group@hyperf.io
* @license https://github.com/hyperf/hyperf/blob/master/LICENSE
*/
use App\Driver\ProdRedisDriver;
use App\Factory\ProdRedisFactory;
return [
'default' => [
'driver' => Hyperf\Cache\Driver\RedisDriver::class,
'packer' => Hyperf\Utils\Packer\PhpSerializerPacker::class,
'prefix' => 'c:',
],
'prod' => [
'driver' => ProdRedisDriver::class,
'packer' => Hyperf\Utils\Packer\PhpSerializerPacker::class,
'prefix' => 'c:',
],
];

View File

@ -5,11 +5,13 @@ namespace Extend\Wechat;
use App\Constants\HttpEnumCode;
use App\Exception\BusinessException;
use App\Factory\CacheFactory;
use App\Factory\ProdRedisFactory;
use EasyWeChat\Kernel\Exceptions\BadResponseException;
use EasyWeChat\Kernel\Exceptions\InvalidArgumentException;
use EasyWeChat\Kernel\HttpClient\AccessTokenAwareClient;
use EasyWeChat\MiniApp\Application;
use Hyperf\Cache\Cache;
use Hyperf\Redis\Redis;
use Hyperf\Utils\ApplicationContext;
use Psr\Container\ContainerExceptionInterface;
use Psr\Container\NotFoundExceptionInterface;
@ -85,7 +87,7 @@ class Wechat
$this->app = new Application($config);
// 替换缓存
$this->app->setCache(make(Cache::class,['driver' => 'prod']));
$this->app->setCache(ApplicationContext::getContainer()->get(CacheFactory::class));
} catch (InvalidArgumentException $e) {
throw new BusinessException('实例化EasyWeChat类失败:' . $e->getMessage(), HttpEnumCode::SERVER_ERROR);
@ -106,7 +108,6 @@ class Wechat
$this->createApp($appId, $appSecret);
return $this->app->getClient();
} catch (NotFoundExceptionInterface|ContainerExceptionInterface $e) {
throw new BusinessException('实例化EasyWeChat类失败:' . $e->getMessage(), HttpEnumCode::SERVER_ERROR);
}