gpt4 book ai didi

Laravel:在排队通知中调用的路由中更改应用程序 url

转载 作者:行者123 更新时间:2023-12-04 10:57:32 25 4
gpt4 key购买 nike

我正在开发一个基于租户的应用程序,并希望为每个租户定制通知。我的问题是一旦 Laravel 队列开始运行,它会读取 APP_URL=olddomain.com环境变量并将其用于通知中生成的每个路由。即使我尝试使用 config(['app.url' => 'newdomain.com']) 更改配置,它仍然会输出任何带有 olddomain.com 的路由字首。我可以通过newdomain.com作为通知的参数并执行以下操作:

$domain = "newdomain.com"; 
$route = route('named-route', [{parameters}], false);
$finalRoute = $domain . '/' . $route; (Output: newdomain.com/named-route)

但这似乎太“hacky”了。可以改吗 app.url对于队列中的每个单独通知?

最佳答案

你可以这样做,把它放在你的启动方法中的“app/Providers/AppServiceProvider.php”中:

app()->singleton('new-domain', 'https://newdomain.com');

然后,执行 php artisan config:cache在你的终端(在你的项目文件夹中),然后在任何你想要的地方调用它:
$myCustomizedDomain = app('new-domain');
$myCustomizedUrl = $myCustomizedDomain . "/my-prefix";

因为没有办法做你正在寻找的东西,对不起。

编辑:

我在 laravel 文档 version-6x 中找到了这个:

  • Redirecting To External Domains

Sometimes you may need to redirect to a domain outside of your application. You may do so by calling the away method, which creates a RedirectResponse without any additional URL encoding, validation, or verification:

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



这允许您从服务器端重定向到应用程序之外的某个页面。

关于Laravel:在排队通知中调用的路由中更改应用程序 url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59087721/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com