Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/296.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Twitch API重定向不匹配_Php_Api_Laravel 4_Twitch - Fatal编程技术网

Php Twitch API重定向不匹配

Php Twitch API重定向不匹配,php,api,laravel-4,twitch,Php,Api,Laravel 4,Twitch,我从昨天开始就忙于Twitch API,使用重定向uri进行了简单的身份验证: http://localhost:8000/redirect 现在,我已将重定向uri更改为: http://localhost:8000/connect/twitch 它不再工作了 我已经在twitch应用程序仪表板和请求中更改了uri,但仍然得到“重定向不匹配” 我做错了什么 抽搐模型: class Twitch{ var $client; var $oauth_token; pu

我从昨天开始就忙于Twitch API,使用重定向uri进行了简单的身份验证:

http://localhost:8000/redirect
现在,我已将重定向uri更改为:

http://localhost:8000/connect/twitch
它不再工作了

我已经在twitch应用程序仪表板和请求中更改了uri,但仍然得到“重定向不匹配”

我做错了什么

抽搐模型:

class Twitch{

    var $client;
    var $oauth_token;

    public function __construct($token = null)
    {
        $this->client = new GuzzleHttp\Client();

        if($token != null) $this->setOAuthToken($token);
    }

    public function retrieveOAuthToken($code)
    {
        $res = $this->client->post('https://api.twitch.tv/kraken/oauth2/token', [
            'body' => [
                'client_id'     => Config::get('twitch.client_id'),
                'client_secret' => Config::get('twitch.client_secret'),
                'grant_type'    => 'authorization_code',
                'redirect_uri'  => Config::get('twitch.redirect_uri'),
                'code'          => $code
            ],
            'verify'            => false
        ]);

        $result = json_decode($res->getBody());
        $this->oauth_token = $result->access_token;
    }
}
Laravel Twitch配置文件:

return array(

    'client_id' => 'REMOVED',

    'client_secret' => 'REMOVED',

    'redirect_uri' => 'http://localhost:8000/twitch',

);
控制器:

class ConnectController extends \BaseController {

    public function twitch()
    {
        $twitch = new Twitch();
        $twitch->retrieveOAuthToken(Input::get('code'));
    }
}
Twitch应用程序设置:


您还需要初始化Twitch JS sdk。我不确定Laravel等,但在这种情况下,如果Twitch是如何初始化的,请尝试在该页面上添加Twitch类。

您需要更新您的Laravel配置:

return array(
    'client_id' => 'REMOVED',
    'client_secret' => 'REMOVED',
    'redirect_uri' => 'http://localhost:8000/connect/twitch',
);
然后你抽搐了一下


如果两个URL中的一个(Laravel或Twitch设置)与另一个不同,您的Laravel似乎指向了错误的地址?