localhost上的测试Laravel API无法获得响应
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了localhost上的测试Laravel API无法获得响应相关的知识,希望对你有一定的参考价值。
所以,如果我从浏览器中调用它,那么这个laravel get产品api是有效的,正如你从这张图片中看到的那样
这是试图获得此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上访问。
答案
虽然建议使用像Guzzle这样的库来代替HTTP请求。但是非常乐于实现和使用
另一答案
而不是echo $result
尝试return response()->json($data)
。
echo $result
返回标题application/html
,而json()
返回application/json
希望这有帮助。
以上是关于localhost上的测试Laravel API无法获得响应的主要内容,如果未能解决你的问题,请参考以下文章
如何从Angular向同一域上的Laravel API发送请求?
Laravel 为外部用户登录成功设置会话或令牌 - 无用户仅数据库 Api 用户