我试图使用fetch API来获取关于我的数据库的信息;net::ERR_CONNECTION_REFUSEDTypeError:无法获取在HTMLDocument.requestItems(script.js:56:5(;错误
这是我连接到数据库的db.php代码
$conn=new mysqli("localhost:3306", "root", "", "online_canteen_system");
if($conn->connect_errno){
echo json_encode(['error'=>$conn->connect_error]);
exit();
}
这是我的items.php代码
<?php
require 'db.php';
header('Access-Control-Allow-Origin: *');
if($_SERVER['REQUEST_METHOD']==="GET"){
$stmt = "select name from items where status=1;";
if($result= $_conn->query($stmt)){
$arr= array();
while($name= $result->fetch_assoc()['name']){
array_push($arr,$name);
}
echo json_encode(['items'=>$arr]);
}
else{
echo json_encode(['error'=>'an error occured']);
}
exit();
}
这是提取api 的js代码
document.addEventListener('DOMContentLoaded', requestItems);
function requestItems() {
fetch("http://localhost:8080/backend/items.php")
.then((res) => res.json())
.then((data) => {
console.log(data);
}
)
.catch(err => console.log(err));
}
错误的屏幕截图
ERR_CONNECTION_REFUSED
表示您没有在端口8080
或localhost
上运行HTTP服务器。
也许您的端口号错了,或者忘记启动服务器。