Instagram集成在Laravel 5上

kyo*_*kyo 9 php instagram laravel laravel-5

我在下面安装此软件包后不断遇到此问题

https://github.com/vinkla/instagram

进入我的Laravel 5.1项目.

2018-02-27在1 55 36 pm

我按照说明中的所有内容.

我使用的是Mac OS X,PHP 7.1,Laravel 5.1

我忘记了什么吗?

如何进行并进一步调试?


我现在对任何建议持开放态度.

任何提示/建议/帮助将非常感谢!

pat*_*cus 6

您的report()方法正在传递PHP7 Throwable而不是Exception.

Laravel 5.1在5.1.8之前未更新为支持PHP7 Throwables.

考虑到错误以及HandleExceptions.php中指定的行号,似乎您使用的是之前的版本(5.1.0 - 5.1.7).

您需要将Laravel更新至至少5.1.8以修复此错误.更新了5.1.8以将Throwables转换为Symfony\Component\Debug\Exception\FatalThrowableError异常,然后将异常传递给该report()方法.


Ale*_*ris 4

您可以更改app\Exceptions\Handler.php为没有类型声明Exception并处理其中的一些逻辑以将错误转换为异常。看起来这是 laravel 5.2 <= 和 php 7 中的一个已知问题。https://github.com/laravel/framework/issues/9650

从:

/**
 * Report or log an exception.
 *
 * This is a great spot to send exceptions to Sentry, Bugsnag, etc.
 *
 * @param  \Exception  $exception
 * @return void
 */
public function report(Exception $exception)
{
    parent::report($exception);
}
Run Code Online (Sandbox Code Playgroud)

到:

/**
 * Report or log an exception.
 *
 * This is a great spot to send exceptions to Sentry, Bugsnag, etc.
 *
 * @param  \Exception  $exception
 * @return void
 */
public function report($exception)
{
    if ($exception instanceof Exception) {
        parent::report($exception);
    } else {
       // convert to exception and then parent::report.
    }

}
Run Code Online (Sandbox Code Playgroud)

您很可能需要使用 Handler 方法执行相同的操作render