我有 2 个站点。我们称之为:
-
A
-
B
网站B
有一个很好的数据列表,以及它的所有关系。我想允许网站A
访问网站B
并加载这些data
。
-
当然,网站
A
需要某种凭据,api_keys或密码才能访问网站B
。右?我从来没有这样做过。 -
然后在凭据匹配后,网站
B
会将数据作为 json 文件返回到网站A
。 -
然后,网站
A
将接收该 json 文件,并将它们加载到 HTML 中并显示它。
我希望我对我的目标足够清楚。
这是我尝试过的:
经过一些研究,我遇到了这个网站。我真的很喜欢它。我一路走完了。现在,我对 RESTful API 有了更多的了解。
现在,继续code
在我的filters.php
我修改
Route::filter('auth.basic', function()
{
return Auth::basic("username");
});
<小时 />在我的routes.php
Route::get('/authtest', array('before' => 'auth.basic', function(){
return return "It's work !";
}));
之后,我跑了
注意
-
username
=firstuser
-
password
=first_password
C:''wamp''www''laravel-1
λ curl --user firstuser:first_password localhost/l4api/public/index.php/authtest
明白了
It's work !
截至目前,它只返回一个字符串。
如果我想以 json 格式返回整个用户表,我该怎么做?
到目前为止,我根本没有使用任何
api_key
?这样不好吗?对参与这篇文章的每个人大
thanks
。
在你的routes.php
中,你应该像这样添加sth。
路由::get('/api/distributors', array('before' => 'auth.basic', 'uses'=>'DistributorController@api_index'((;
}((;
Controller
<?php
$user = $distributor->user()->first();
$Data = [
'user' => $user->toArray(),
'distributor' => $distributor->toArray(),
'contacts' => $distributor->contacts()->get()->toArray(),
'addresses' => $distributor->addresses()->get()->toArray()
];
$json_string = json_encode($Data, JSON_PRETTY_PRINT);
?>
逻辑
- 查询您需要的任何内容
- 将它们存储在数组索引中
- 对数据进行编码
- 在发送之前让您的 JSON 漂亮
然后,另一个站点将收到包含所有数据的1
json 文件。然后他们需要在之前对其进行解码,他们可以将它们全部加载为HTML/PHP
格式。