标签: laravel-7

预期响应代码 250,但得到代码“550”,消息为“550 5.7.1 Relaying denied”

当我尝试使用 mailgun 和 laravel 7 发送电子邮件时,我收到此错误预期响应代码 250,但收到代码“550”,并显示消息“550 5.7.1 中继被拒绝”。但我不知道该怎么办

email mailgun laravel-7

8
推荐指数
1
解决办法
6727
查看次数

请求响应在$kernel->handle($request)中返回

这是来自 laravel APIpublic/index.php文件的代码。

$kernel = $app->make(Illuminate\Contracts\Http\Kernel::class);

$response = $kernel->handle(
    $request = Illuminate\Http\Request::capture()
);

$response->send();

$kernel->terminate($request, $response);
Run Code Online (Sandbox Code Playgroud)

发送请求时,它返回时不带任何数据,status code: 200仅返回 from $kernel->handle

dd('111');当我之前打印时

$response = $kernel->handle(
    $request = Illuminate\Http\Request::capture()
);
Run Code Online (Sandbox Code Playgroud)

它显示在请求的响应中,但是当我在之后打印时$response = $kernel->handle(),请求没有响应。

laravel laravel-7

8
推荐指数
2
解决办法
2万
查看次数

Laravel 密室未经身份验证

我在我的项目中使用 Laravel sanctum,以 angular 作为前端。从第二个 api 请求中获取未经身份验证。请让我知道我哪里出错了

前端-> 127.0.0.1:4200

后端-> 本地主机:8888

.env 配置

SESSION_DOMAIN=本地主机SANCTUM_STATEFUL_DOMAINS=127.0.0.1

将中间件auth:sanctum添加到 api.php 中的路由组

参考: https : //prnt.sc/rm9ejy

laravel-7 laravel-sanctum

7
推荐指数
6
解决办法
9314
查看次数

未定义类型 Laravel\Passport\HasApiTokens

我按照Laravel 文档在 Laravel 中安装 Passport 服务。但是,当我想在用户模型中使用 HasApiToken 时,我收到错误未定义类型“Laravel\Passport\HasApiTokens”。

用户.php:

<?php

namespace App;

use Illuminate\Contracts\Auth\MustVerifyEmail;
use Illuminate\Foundation\Auth\User as Authenticatable;
use Illuminate\Notifications\Notifiable;
use Laravel\Passport\HasApiTokens;

class User extends Authenticatable
{
    use HasApiTokens, Notifiable;
Run Code Online (Sandbox Code Playgroud)

Composer.json

{
    "name": "laravel/laravel",
    "type": "project",
    "description": "The Laravel Framework.",
    "keywords": [
        "framework",
        "laravel"
    ],
    "license": "MIT",
    "require": {
        "php": "^7.2.5",
        "fideloper/proxy": "^4.2",
        "fruitcake/laravel-cors": "^1.0",
        "guzzlehttp/guzzle": "^6.3",
        "laravel/framework": "^7.0",
        "laravel/passport": "^8.4",
        "laravel/tinker": "^2.0",
        "laravel/ui": "^2.0"
    },
Run Code Online (Sandbox Code Playgroud)

为什么我会收到此错误?

laravel laravel-passport laravel-7

7
推荐指数
2
解决办法
9040
查看次数

Laravel Echo 不听

我设置了一个事件和新频道:

class TaskCreated implements shouldBroadcast
 {
use Dispatchable, InteractsWithSockets, SerializesModels;
public $task;

public function __construct(Task $task)
{
    $this->task = $task;
}

}
Run Code Online (Sandbox Code Playgroud)

并安装 Echo 并进行设置

 import Echo from "laravel-echo"
window.Pusher = require('pusher-js');
window.Echo = new Echo({
    broadcaster: 'pusher',
    key: 'pusher-key',
    cluster: 'ap2',
    encrypted: true
});
Run Code Online (Sandbox Code Playgroud)

然后我在发布任务时调用 TaskCreated 事件

event(new TaskCreated($task));
Run Code Online (Sandbox Code Playgroud)

然而,问题是 Echo 不听推送日志或任何东西。即使在 laravel-websockets 中,事件是作为 api 消息创建的。

这是 vue js Echo 实现:

 mounted () {
        axios.get('/tasks').then(response => (this.tasks = response.data));

       Echo.channel('taskCreated').listen('TaskCreated', (e) => {
            console.log(e);
            this.tasks.push(task.body)
        });
Run Code Online (Sandbox Code Playgroud)

在仪表板中:

api-message Channel: …

php laravel vue.js laravel-websockets laravel-7

7
推荐指数
2
解决办法
7790
查看次数

Laravel Sanctum:使用 Nuxt Auth 模块被 CORS 策略阻止

我有一个Laravel网站通过提供代客backend.testNuxt SPA上nuxt.backend.test:3005。当我尝试使用Nuxt Auth模块向Sanctum进行身份验证时,出现以下 CORS 错误:

从源“ http://nuxt.backend.test:3005 ”访问“ http://backend.test/login ”处的 XMLHttpRequest已被 CORS 策略阻止:不存在“Access-Control-Allow-Origin”标头在请求的资源上。

我该如何解决?

Laravel 配置

config/cors.php

<?php

return [
    'paths' => ['*'],
    'allowed_methods' => ['*'],
    'allowed_origins' => ['*'],
    'allowed_origins_patterns' => [],
    'allowed_headers' => ['*'],
    'exposed_headers' => [],
    'max_age' => 0,
    'supports_credentials' => true,
];
Run Code Online (Sandbox Code Playgroud)

routes/api.php

Route::middleware('auth:sanctum')->get('/user', function (Request $request) {
    return $request->user();
});
Run Code Online (Sandbox Code Playgroud)

app/Http/Kernel.php

    protected $middlewareGroups = [
        ...
        'api' => …
Run Code Online (Sandbox Code Playgroud)

cors laravel-valet nuxt.js laravel-7 laravel-sanctum

7
推荐指数
1
解决办法
6256
查看次数

我是否解决了“目标类 [mail.manager] 不存在”的问题。问题?

刚刚从 Laravel 6 升级到 7,在提交联系表单时出现上述错误响应。我最终找到了一个似乎有效的解决方案,我在这里提交以帮助下一个人。

在终端中运行:

composer require illuminate/mail 
Run Code Online (Sandbox Code Playgroud)

将以下内容添加到控制器文件的顶部(在我的例子中为 app/Http/Controllers/Main.php):

use \Illuminate\Support\Facades\Mail;
Run Code Online (Sandbox Code Playgroud)

将其添加到 bootstrap/app.php 中:

$app->register(Illuminate\Mail\MailServiceProvider::class); 
Run Code Online (Sandbox Code Playgroud)

保存并测试,它可以在本地主机上运行。

如果上述方法对您不起作用,此链接还提供了一些其他可能的问题和解决方案,我必须将其归功于 vipindasks。

https://laracasts.com/discuss/channels/lumen/lumen-52-mail-not-working

因为我想问一个问题:

即使网站和邮件程序现在正在运行,您是否发现此解决方案有任何问题?

email laravel laravel-7

7
推荐指数
1
解决办法
6738
查看次数

Laravel 7 致命错误:未捕获运行时异常:尚未设置外观根

我查看了针对类似问题提出的几个答案,但对我的案例没有任何作用。仅供参考,这是我在 Laravel 7 中的第一个项目,在我的 Mac 上运行良好。我已按照本文在我的服务器上部署了该项目。在网络上运行该项目时,出现以下错误:

致命错误:未捕获运行时异常:尚未设置外观根。在 /usr/www/users/utopiqwvpw/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php:258

堆栈跟踪:#0 /usr/www/users/utopiqwvpw/vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/Handler.php(425): Illuminate\Support\Facades\Facade::__callStatic('replaceNamespac.. .', 数组) #1 /usr/www/users/utopiqwvpw/vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/Handler.php(402): Illuminate\Foundation\Exceptions\Handler->registerErrorViewPaths() # 2 /usr/www/users/utopiqwvpw/vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/Handler.php(313): Illuminate\Foundation\Exceptions\Handler->renderHttpException(Object(Symfony\Component\HttpKernel\)异常\HttpException))#3 /usr/www/users/utopiqwvpw/vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/Handler.php(210):照亮\Foundation\Exceptions\Handler->prepareResponse(对象( Illuminate\Http\Request), Object(Symfony\Component\HttpKernel\Exception\HttpExcepti in /usr/www/users/utopiqwvpw/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php 第 258 行

我该如何修复它?

deployment runtimeexception composer-php laravel-facade laravel-7

6
推荐指数
1
解决办法
3万
查看次数

在 Laravel 中使用 Sendmail 发送电子邮件的正确配置是什么?

我正在使用 Laravel 7,我想通过 Laravel Mail 门面使用 Sendemail 驱动程序发送电子邮件。当我使用 PHP 邮件功能时它有效,但我想使用 Laravel Mail 外观。

我的 .env 文件电子邮件配置:

MAIL_DRIVER=sendmail
MAIL_SENDMAIL='/usr/sbin/sendmail -t -i'
Run Code Online (Sandbox Code Playgroud)

我在 config/mail.php 中的默认邮件设置:

'default' => env('MAIL_MAILER', 'sendmail'),
'mailers' => [
    'smtp' => [
        'transport' => 'smtp',
        'host' => env('MAIL_HOST', 'smtp.mailgun.org'),
        'port' => env('MAIL_PORT', 587),
        'encryption' => env('MAIL_ENCRYPTION', 'tls'),
        'username' => env('MAIL_USERNAME'),
        'password' => env('MAIL_PASSWORD'),
    ],
    'ses' => [
        'transport' => 'ses',
    ],
    'sendmail' => [
        'transport' => 'sendmail',
        'path' => '/usr/sbin/sendmail -bs',
    ],
    'log' => [
        'transport' => 'log',
        'channel' …
Run Code Online (Sandbox Code Playgroud)

php sendmail laravel laravel-mail laravel-7

6
推荐指数
1
解决办法
7264
查看次数

在 artisantinker 中调用模型类的别名

这个问题可能听起来很愚蠢,但我真的很想知道是否有办法解决 artisan 命令中模型路径过长的问题。

我有一个按以下结构组织的模型:

`app\Models\Auth\User.php`
Run Code Online (Sandbox Code Playgroud)

在用户模型中,我将命名空间定义为:

namespace App\Models\Auth;

class User extends Authenticatable
{

}
Run Code Online (Sandbox Code Playgroud)

现在,每次我需要访问该模型时,例如在 artisantinker 命令中,我都需要编写以下内容:

>>> Models\Auth\User::create([..]);
Run Code Online (Sandbox Code Playgroud)

如果我省略完整路径,我只会收到错误failed to open stream: No such file or directory

有没有一种好方法可以为模型类提供别名,以便我可以在任何地方轻松访问它?

config/app.php这是一个好地方吗?我从未见过有人将模型放入别名部分,我不确定这是否是一个好主意。

namespaces laravel laravel-artisan laravel-7

6
推荐指数
1
解决办法
6222
查看次数