|
@@ -62,32 +62,36 @@ class TwitterService implements SmmPlatformInterface
|
|
|
|
|
|
public function loginCallback(Request $request)
|
|
|
{
|
|
|
- $oauthToken = $request->get('oauth_token');
|
|
|
- $oauthVerifier = $request->get('oauth_verifier');
|
|
|
-
|
|
|
- $requestToken = session('twitter_oauth_token');
|
|
|
- $requestTokenSecret = session('twitter_oauth_token_secret');
|
|
|
-
|
|
|
- $connection = new TwitterOAuth(
|
|
|
- $this->consumerKey,
|
|
|
- $this->consumerSecret,
|
|
|
- $requestToken,
|
|
|
- $requestTokenSecret
|
|
|
- );
|
|
|
- $accessToken = $connection->oauth('oauth/access_token', [
|
|
|
- 'oauth_verifier' => $oauthVerifier
|
|
|
- ]);
|
|
|
- $expiresAt = Carbon::now()->addDays(90)->format('Y-m-d H:i:s');
|
|
|
- return [
|
|
|
- 'status' => true,
|
|
|
- 'data' => [
|
|
|
- 'accessToken' => $accessToken['oauth_token'],
|
|
|
- 'backupField1' => json_encode(['accessTokenSecret'=>$accessToken['oauth_token_secret']]),
|
|
|
- 'userId' => $accessToken['user_id'],
|
|
|
- 'userName' => $accessToken['screen_name'],
|
|
|
- 'accessToken_expiresAt' => $expiresAt,
|
|
|
- ]
|
|
|
- ];
|
|
|
+ try {
|
|
|
+ $oauthToken = $request->get('oauth_token');
|
|
|
+ $oauthVerifier = $request->get('oauth_verifier');
|
|
|
+
|
|
|
+ $requestToken = session('twitter_oauth_token');
|
|
|
+ $requestTokenSecret = session('twitter_oauth_token_secret');
|
|
|
+
|
|
|
+ $connection = new TwitterOAuth(
|
|
|
+ $this->consumerKey,
|
|
|
+ $this->consumerSecret,
|
|
|
+ $requestToken,
|
|
|
+ $requestTokenSecret
|
|
|
+ );
|
|
|
+ $accessToken = $connection->oauth('oauth/access_token', [
|
|
|
+ 'oauth_verifier' => $oauthVerifier
|
|
|
+ ]);
|
|
|
+ $expiresAt = Carbon::now()->addDays(90)->format('Y-m-d H:i:s');
|
|
|
+ return [
|
|
|
+ 'status' => true,
|
|
|
+ 'data' => [
|
|
|
+ 'accessToken' => $accessToken['oauth_token'],
|
|
|
+ 'backupField1' => json_encode(['accessTokenSecret'=>$accessToken['oauth_token_secret']]),
|
|
|
+ 'userId' => $accessToken['user_id'],
|
|
|
+ 'userName' => $accessToken['screen_name'],
|
|
|
+ 'accessToken_expiresAt' => $expiresAt,
|
|
|
+ ]
|
|
|
+ ];
|
|
|
+ } catch (\Exception $e) {
|
|
|
+ return ['status' => false, 'data' => $e->getMessage()];
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
|
|
@@ -146,20 +150,27 @@ class TwitterService implements SmmPlatformInterface
|
|
|
|
|
|
Log::info('twitter上传视频'.$videoPath);
|
|
|
|
|
|
+ echo '1';
|
|
|
// Upload video with chunked upload
|
|
|
$uploadedMedia = $this->twitterOAuth->upload('media/upload', [
|
|
|
'media' => $videoPath,
|
|
|
- 'media_category' => 'tweet_video'
|
|
|
+ // 'media_category' => 'tweet_video'
|
|
|
+ 'media_type' => 'video/mp4'
|
|
|
],['chunkedUpload'=>true]);
|
|
|
|
|
|
+ // dd($uploadedMedia);
|
|
|
+ // dd($uploadedMedia);
|
|
|
+
|
|
|
Log::info('1.1版本,分块上传视频');
|
|
|
|
|
|
$code = $this->twitterOAuth->getLastHttpCode();
|
|
|
|
|
|
+
|
|
|
if (isset($uploadedMedia->error) || $code != 200) {
|
|
|
throw new \Exception('媒体上传失败: ' . json_encode($uploadedMedia));
|
|
|
}
|
|
|
|
|
|
+
|
|
|
$mediaId = $uploadedMedia->media_id_string;
|
|
|
|
|
|
|
|
@@ -196,7 +207,7 @@ class TwitterService implements SmmPlatformInterface
|
|
|
return ['status' => false, 'data' => '视频上传失败或处理超时。' ];
|
|
|
}
|
|
|
} catch (\Exception $e) {
|
|
|
- return ['status' => false, 'data' => $e->getMessage()];
|
|
|
+ return ['status' => false, 'data' => '视频上传异常: '.$e->getMessage()];
|
|
|
}
|
|
|
}
|
|
|
|