Javascript 当处理Laravel API而不是返回Laravel视图时,如何设计路由?

Javascript 当处理Laravel API而不是返回Laravel视图时,如何设计路由?,javascript,php,html,laravel,google-amp,Javascript,Php,Html,Laravel,Google Amp,到目前为止,我一直在构建从后端返回视图或模板的Laravel和Django应用程序。到目前为止还不错 然而,我现在正在构建一个从前端代码调用的LaravelAPI 按照我在拉威尔的老办法: 从web.php Route::get('/', function () { return view('welcome'); }); 或者我可以从控制器返回视图 但是,如果Laravel应用程序是一个返回JSON的API,我如何设计URL 基本上,如果有人在主页上单击一个链接,该链接会将他带到一个用

到目前为止,我一直在构建从后端返回视图或模板的Laravel和Django应用程序。到目前为止还不错

然而,我现在正在构建一个从前端代码调用的LaravelAPI

按照我在拉威尔的老办法: 从
web.php

Route::get('/', function () {
    return view('welcome');
});
或者我可以从控制器返回视图

但是,如果Laravel应用程序是一个返回JSON的API,我如何设计URL

基本上,如果有人在主页上单击一个链接,该链接会将他带到一个用户配置文件,比如:

/user/{id}

我将在哪里决定此URL的外观以及调用哪个端点?

您可以使用相同的路由语法,但不是返回视图,而是返回一个


查看所有可用的响应类型。

您可以使用相同的路由语法,但不是返回视图,而是返回一个


看看所有可用的回答类型。

我终于明白了这一点。至少我这么认为

web.php
中,我有一组带有我想要的URL的闭包。这些闭包返回没有数据的视图。与此类似:

Route::get('/', function () {
    return view('welcome');
});
然后在视图中,我调用
API.php
中指定的API端点来呈现视图中需要的数据

// List activities
Route::get('activities', 'ActivityController@index');

我终于明白了。至少我这么认为

web.php
中,我有一组带有我想要的URL的闭包。这些闭包返回没有数据的视图。与此类似:

Route::get('/', function () {
    return view('welcome');
});
然后在视图中,我调用
API.php
中指定的API端点来呈现视图中需要的数据

// List activities
Route::get('activities', 'ActivityController@index');

Laravel 5.3及以上版本提供了单独的路由文件
routes/api.php
,您可以在其中编写与api请求相关的所有路由

对于控制器,只需在控制器文件夹中创建一个名为“Api”的单独文件夹,并在其中创建与Api相关的控制器

然后,您可以为相应的路由编写函数。并将json作为
return response()->json(['data'=>$data])


或者,您可以使用包在laravel中创建一个seperate api模块

Laravel 5.3及以上版本提供了单独的路由文件
routes/api.php
,您可以在其中编写与api请求相关的所有路由

对于控制器,只需在控制器文件夹中创建一个名为“Api”的单独文件夹,并在其中创建与Api相关的控制器

然后,您可以为相应的路由编写函数。并将json作为
return response()->json(['data'=>$data])


或者,您可以使用包在laravel中创建一个seperate api模块

您可以在
api.php
中添加路由,我相信它会自动将
api
作为URL的前缀。i、 例如,
api/user/{id}
我知道,但这设计了api端点路由。我想设计前端路由。前端与API有什么关系?@Wreigh我是在web.php中这样做的,并将我的AMP页面当作调用API端点的Larvel视图来提供吗?我的想法是将前端和后端作为独立的系统。对不起,我不熟悉AMP。您打算在前端路由上返回(响应)什么?您可以在
api.php
中添加路由,我相信它会自动在URL前面加上
api
。i、 例如,
api/user/{id}
我知道,但这设计了api端点路由。我想设计前端路由。前端与API有什么关系?@Wreigh我是在web.php中这样做的,并将我的AMP页面当作调用API端点的Larvel视图来提供吗?我的想法是将前端和后端作为独立的系统。对不起,我不熟悉AMP。您打算在前端路线上返回(响应)什么?