Laravel 中的 API 路由返回 404
我在 laravel 中安装了 https://tenancyforlaravel.com/ 以实现多租户,并且它在网络上运行良好路线。
我的问题是,当我访问 API 时,我在租户域中收到 404 错误。
tenancyforlaravel 文档: https://tenancyforlaravel.com/docs/v3/routes< /a>
它说我必须将所有 API 放入 api.php
文件中,并使用此中间件将它们包装在 Route 组中,因此我将所有 API 放入其中api.php
文件和我的所有 API 如下:
Route::middleware('tenancy')->group(function () {
Route::name('api.')->namespace('Api')->group(function () {
Route::post('/login', 'AuthController@login')->name('login');
...
});
当我使用 sub.local.test/api/login
访问它时,我收到 404 错误。
I have https://tenancyforlaravel.com/ installed in laravel to make multi-tenant and it works fine for the web routes.
My problem is that when I access my APIs then I get a 404 error in tenant domains.
tenancyforlaravel documentation: https://tenancyforlaravel.com/docs/v3/routes
It says that I must put all my APIs inside api.php
file and wrap them in a Route group with this middleware so I put all my APIs inside api.php
file and all my APIs as below:
Route::middleware('tenancy')->group(function () {
Route::name('api.')->namespace('Api')->group(function () {
Route::post('/login', 'AuthController@login')->name('login');
...
});
and when I access it using sub.local.test/api/login
then I get 404 error.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
已针对 tenancyforlaravel.com V3 进行测试,运行正常。
Tested for tenancyforlaravel.com V3 and it works OK.
将所有 API 路由放入
api.php
中,如下所示由于您没有提及租户标识符,我使用
path
作为标识符,因此使用InitializeTenancyByPath 中间件。使用您想要的任何标识符中间件来代替它。
像以前一样使用您的标识符正常访问您的 API 路由。由于此示例使用
path
作为标识符,因此端点将如下所示:Put all your API routes inside
api.php
as belowAs you haven't mentioned your tenant identifier, I am using
path
as identifier, so usingInitializeTenancyByPath
middleware. Use whatever identifier middleware you want in place of that.Access your API routes normally as you used to do, with your identifier. As this example uses
path
as identifier, the endpoint will look like: