Laravel 5:重定向到本地主机/服务器之外的外部链接

2022-08-30 20:42:52

我想用 laravel 5 和 dropbox API 构建一个应用程序,我希望 API 允许/取消警告在你登陆主页时显示,而不是在你点击按钮时显示。我尝试了不同的方法,但我无法使它工作。

public function start(){
        session(['user_id'=>1]);
        $dKey = 'key';
        $dSecret = 'secret';
        $appName = 'app';

        $appInfo = new Dropbox\AppInfo($dKey,$dSecret);

        //store csrf token
        $tokenStore = new  Dropbox\ArrayEntryStore($_SESSION,'dropbox-auth-csrf-token');
        //define auth details
        $this->webAuth = new Dropbox\WebAuth($appInfo,$appName,'http://localhost:8000/dropbox/finish',$tokenStore);
        $this->checkSession();
    }

    public function checkSession(){
        $users = User::where('id','=',session('user_id'))->get();

        if(isset($user[0]->dropbox_token)){

        }
        else{
            $url = $this->webAuth->start();

            //return Redirect::to($url);
            //return Redirect::away($url);
            //header('Location : '.$url);
        }

    }

$url中存在的链接且有效。

这些(最后3个注释的方法)是我尝试过的方法,包括返回重定向($url),是否可以这样做,或者我正在浪费时间?请帮助我。


答案 1

此代码适用于我:

return redirect()->away('https://www.dropbox.com');

确保还在 中添加返回值(即 )。return $this->checkSession();start()


答案 2

下面的代码将起作用

return redirect()->away('http://www.paypal.com');

这也将起作用。

return redirect('http://www.paypal.com');

推荐