localhost上的测试Laravel API无法获得响应

问题描述 投票:1回答:2

所以,如果我从浏览器中调用它,那么这个laravel get产品api是有效的,正如你从这张图片中看到的那样

enter image description here

这是试图获得此json响应的curl代码块

$url = 'http://localhost:8000/api/products';
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_TIMEOUT, 5);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$data = curl_exec($ch);
curl_close($ch);
$result = json_decode($data,true);
echo $result;

但我无法得到任何结果,没有回应。我在https://demo0546443.mockable.io/products/getAllProducts中有一个可模拟的api,它产生与我的localhost api几乎相同的json,它返回响应,因为它应该有。请帮忙

解决方案因此,经过无数个小时的研究,似乎需要在静态IP上访问laravel,而不是在localhost上访问。

php laravel curl localhost
2个回答
0
投票

虽然建议使用像Guzzle这样的库来代替HTTP请求。但是非常乐于实现和使用


0
投票

而不是echo $result尝试return response()->json($data)

echo $result返回标题application/html,而json()返回application/json希望这有帮助。

© www.soinside.com 2019 - 2024. All rights reserved.