【发布时间】:2015-02-21 15:41:23
【问题描述】:
情况
我在尝试使用 cURL 从我的其他站点检索数据时卡住了
当我去http://localhost/api/distributors时
- 我可以看到所有的 json。 :)
但是当我使用 CLI 并运行此命令时curl -i --user test:1234 http://localhost/api/distributors
我无法连接到它,或者根本看不到任何 json。
我不确定出了什么问题。 我确定我输入了正确的用户名和密码。
详情
这是我的路线。
Route::get('/api/distributors', array('before' => 'auth.basic', 'uses'=>'DistributorController@api_index'));
它叫DistributorController > api_index
这是我的api_index 函数
public function api_index()
{
$distributors = [];
foreach(Distributor::all() as $distributor)
{
$user = $distributor->user()->first();
$distributors[$distributor->id] = [
'user' => $user->toArray(),
'distributor' => $distributor->toArray(),
'contacts' => $distributor->contacts()->get()->toArray(),
'addresses' => $distributor->addresses()->get()->toArray()
];
}
$json_string = json_encode($distributors, JSON_PRETTY_PRINT);
return $json_string;
}
问题
- 我不确定应该将代码的解码部分放在哪里。
是否应该进入
encoding的相同功能?
看起来像这样:
<h1>Decode</h1>
<?php
$ch = curl_init("http://localhost/api/distributors");
curl_setopt($ch, CURLOPT_USERPWD, "test:1234");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$body = curl_exec($ch);
curl_close($ch);
?>
<?php $distributor = json_decode($body, TRUE); ?>
<!-- Test -->
<li><?php echo $distributor['distributor']['company_name']; ?></li>
注意
我只是在尝试使用 cURL 连接时遇到问题。
【问题讨论】:
-
将调试回显与 LINE FILE 并查看,添加 laravel 标记
-
Route::get ?卷曲不是帖子吗?尝试 Route::any
-
好的。我现在就试试。
-
debug echo with LINE FILE,这是什么意思?同样Route::any也不起作用,当我运行这个curl -i --user test:1234 http://localhost/api/distributors -
echo curl_error($ch)有话说吗?
标签: php json curl laravel laravel-4