Skip to content

Commit 64d424a

Browse files
jinchunovertrue
authored andcommitted
5.8 兼容问题。 (overtrue#301)
* laravel 5.4 起弃用 Event 的 fire 方法。5.8 起正式移除该方法。 * laravel 5.8 起弃用 str_* 和 arr_* 助手方法,5.9 起移除。
1 parent 76af79c commit 64d424a

File tree

4 files changed

+18
-16
lines changed

4 files changed

+18
-16
lines changed

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
/vendor/
22
composer.lock
3-
.php_cs.cache
3+
.php_cs.cache
4+
.idea

README.md

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -181,13 +181,14 @@ Route::group(['middleware' => ['wechat.oauth:default,snsapi_userinfo']], functio
181181
> 以下字段在 scope 为 `snsapi_userinfo` 时尽可能配置齐全哦,当然,如果你的模式只是 `snsapi_base` 的话只需要 `openid` 就好了。
182182
183183
```php
184+
use Illuminate\Support\Arr;
184185
use Overtrue\Socialite\User as SocialiteUser;
185186

186187
$user = new SocialiteUser([
187-
'id' => array_get($user, 'openid'),
188-
'name' => array_get($user, 'nickname'),
189-
'nickname' => array_get($user, 'nickname'),
190-
'avatar' => array_get($user, 'headimgurl'),
188+
'id' => Arr::get($user, 'openid'),
189+
'name' => Arr::get($user, 'nickname'),
190+
'nickname' => Arr::get($user, 'nickname'),
191+
'avatar' => Arr::get($user, 'headimgurl'),
191192
'email' => null,
192193
'original' => [],
193194
'provider' => 'WeChat',

src/Controllers/OpenPlatformController.php

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@
1313

1414
use EasyWeChat\OpenPlatform\Application;
1515
use EasyWeChat\OpenPlatform\Server\Guard;
16-
use Event;
1716
use Overtrue\LaravelWeChat\Events\OpenPlatform as Events;
1817

1918
class OpenPlatformController extends Controller
@@ -30,16 +29,16 @@ public function __invoke(Application $application)
3029
$server = $application->server;
3130

3231
$server->on(Guard::EVENT_AUTHORIZED, function ($payload) {
33-
Event::fire(new Events\Authorized($payload));
32+
event(new Events\Authorized($payload));
3433
});
3534
$server->on(Guard::EVENT_UNAUTHORIZED, function ($payload) {
36-
Event::fire(new Events\Unauthorized($payload));
35+
event(new Events\Unauthorized($payload));
3736
});
3837
$server->on(Guard::EVENT_UPDATE_AUTHORIZED, function ($payload) {
39-
Event::fire(new Events\UpdateAuthorized($payload));
38+
event(new Events\UpdateAuthorized($payload));
4039
});
4140
$server->on(Guard::EVENT_COMPONENT_VERIFY_TICKET, function ($payload) {
42-
Event::fire(new Events\VerifyTicketRefreshed($payload));
41+
event(new Events\VerifyTicketRefreshed($payload));
4342
});
4443

4544
return $server->serve();

src/Middleware/OAuthAuthenticate.php

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,9 @@
1212
namespace Overtrue\LaravelWeChat\Middleware;
1313

1414
use Closure;
15-
use Illuminate\Support\Facades\Event;
1615
use http\Env\Request;
16+
use Illuminate\Support\Arr;
17+
use Illuminate\Support\Str;
1718
use Overtrue\LaravelWeChat\Events\WeChatUserAuthorized;
1819

1920
/**
@@ -33,7 +34,7 @@ class OAuthAuthenticate
3334
public function handle($request, Closure $next, $account = 'default', $scopes = null)
3435
{
3536
// $account 与 $scopes 写反的情况
36-
if (is_array($scopes) || (\is_string($account) && str_is('snsapi_*', $account))) {
37+
if (is_array($scopes) || (\is_string($account) && Str::is('snsapi_*', $account))) {
3738
list($account, $scopes) = [$scopes, $account];
3839
$account || $account = 'default';
3940
}
@@ -42,7 +43,7 @@ public function handle($request, Closure $next, $account = 'default', $scopes =
4243
$sessionKey = \sprintf('wechat.oauth_user.%s', $account);
4344
$config = config(\sprintf('wechat.official_account.%s', $account), []);
4445
$officialAccount = app(\sprintf('wechat.official_account.%s', $account));
45-
$scopes = $scopes ?: array_get($config, 'oauth.scopes', ['snsapi_base']);
46+
$scopes = $scopes ?: Arr::get($config, 'oauth.scopes', ['snsapi_base']);
4647

4748
if (is_string($scopes)) {
4849
$scopes = array_map('trim', explode(',', $scopes));
@@ -55,7 +56,7 @@ public function handle($request, Closure $next, $account = 'default', $scopes =
5556
session([$sessionKey => $officialAccount->oauth->user() ?? []]);
5657
$isNewSession = true;
5758

58-
Event::fire(new WeChatUserAuthorized(session($sessionKey), $isNewSession, $account));
59+
event(new WeChatUserAuthorized(session($sessionKey), $isNewSession, $account));
5960

6061
return redirect()->to($this->getTargetUrl($request));
6162
}
@@ -65,7 +66,7 @@ public function handle($request, Closure $next, $account = 'default', $scopes =
6566
return $officialAccount->oauth->scopes($scopes)->redirect($request->fullUrl());
6667
}
6768

68-
Event::fire(new WeChatUserAuthorized(session($sessionKey), $isNewSession, $account));
69+
event(new WeChatUserAuthorized(session($sessionKey), $isNewSession, $account));
6970

7071
return $next($request);
7172
}
@@ -79,7 +80,7 @@ public function handle($request, Closure $next, $account = 'default', $scopes =
7980
*/
8081
protected function getTargetUrl($request)
8182
{
82-
$queries = array_except($request->query(), ['code', 'state']);
83+
$queries = Arr::except($request->query(), ['code', 'state']);
8384

8485
return $request->url().(empty($queries) ? '' : '?'.http_build_query($queries));
8586
}

0 commit comments

Comments
 (0)