需要有关 Laravel Api 的帮助
Need Help About Laravel Api
我有两个在不同领域工作的 Web 应用程序,第一个是 Laravel 这样的 Web 应用程序
domaine1.com
和另一个同样使用 laravel
构建的 Web 应用程序
domaine2.com
我在第一个应用程序上有一个这样的仪表板 (domaine1.com/dashboard
),
我想从这个仪表板添加例如 A books 到 web Application 2 ,它有自己的数据库和表......
有人可以告诉我我该怎么做吗?
我是 laravel 的新手,我想我应该使用 API 之类的东西?还是别的?
在您的应用程序 2 中创建一条路线 routes.php 以获取书籍
例如
Route::get('domaine2.com/books', 'BookController@getBooks');
在您的 BookController 中:
public function getBooks()
{
$books = Books::all(); //I assume that Books is your model
return $books
}
现在您所要做的就是在 domaine1.com 应用程序的控制器中的一个函数中调用它来获取您的书籍
$books = file_get_contents('http://domaine2.com/books');
首先尝试一下并确保它有效,请尝试访问 http://domaine2.com/books
以查看您的书籍是否获得 json。
是的。你应该使用 API。虽然不会那么容易,因为你要创建跨域请求。
如果您要传递的数据未分类,您可以制作一个 public API 处理程序,这意味着每个人都可以访问它。例如,这可以是 return 数据库中某些对象的获取请求。假设您在 domain1.com:
中创建了一条路线
GET domain1.com/api/books
那 returns json/data
然后,如果有人访问 http://domain1.com/api/books,他将看到此响应的格式为 json。您可以使用 CURL 在 domain2.com
应用程序中使用它,或者使用 axios 在 vue.js 中内置它。
如果您要提供的数据是机密的,或者您想发出 GET 以外的请求(例如 POST),您将必须阅读有关应用程序授权的信息。简而言之:您必须向您的 domain1.com
应用展示允许想要访问受限数据的人这样做。
顺便提一下其他回复:你应该在路由中使用 api.php
,而不是 web.php
。请记住,file_get_contents
比 CURL 慢得多。
我有两个在不同领域工作的 Web 应用程序,第一个是 Laravel 这样的 Web 应用程序
domaine1.com
和另一个同样使用 laravel
构建的 Web 应用程序domaine2.com
我在第一个应用程序上有一个这样的仪表板 (domaine1.com/dashboard
),
我想从这个仪表板添加例如 A books 到 web Application 2 ,它有自己的数据库和表......
有人可以告诉我我该怎么做吗?
我是 laravel 的新手,我想我应该使用 API 之类的东西?还是别的?
在您的应用程序 2 中创建一条路线 routes.php 以获取书籍 例如
Route::get('domaine2.com/books', 'BookController@getBooks');
在您的 BookController 中:
public function getBooks()
{
$books = Books::all(); //I assume that Books is your model
return $books
}
现在您所要做的就是在 domaine1.com 应用程序的控制器中的一个函数中调用它来获取您的书籍
$books = file_get_contents('http://domaine2.com/books');
首先尝试一下并确保它有效,请尝试访问 http://domaine2.com/books
以查看您的书籍是否获得 json。
是的。你应该使用 API。虽然不会那么容易,因为你要创建跨域请求。
如果您要传递的数据未分类,您可以制作一个 public API 处理程序,这意味着每个人都可以访问它。例如,这可以是 return 数据库中某些对象的获取请求。假设您在 domain1.com:
中创建了一条路线GET domain1.com/api/books
那 returns json/data
然后,如果有人访问 http://domain1.com/api/books,他将看到此响应的格式为 json。您可以使用 CURL 在 domain2.com
应用程序中使用它,或者使用 axios 在 vue.js 中内置它。
如果您要提供的数据是机密的,或者您想发出 GET 以外的请求(例如 POST),您将必须阅读有关应用程序授权的信息。简而言之:您必须向您的 domain1.com
应用展示允许想要访问受限数据的人这样做。
顺便提一下其他回复:你应该在路由中使用 api.php
,而不是 web.php
。请记住,file_get_contents
比 CURL 慢得多。