"Cannot GET" 使用 Vue.js 的 REST API 错误
"Cannot GET" error in REST API using Vue.js
我有一个用 Vue.js 制作的项目,我 运行 通过 npm (Node) 的本地主机。
我是 Rest API 的新手。我根据互联网教程制作了一个简单的 REST API。
employees.php
<?php
// Connect to database
include("../connection.php");
$db = new dbObj();
$connection = $db->getConnstring();
$request_method=$_SERVER["REQUEST_METHOD"];
switch($request_method)
{
case 'GET':
// Retrive Products
if(!empty($_GET["id"]))
{
$id=intval($_GET["id"]);
get_employees($id);
}
else
{
get_employees();
}
break;
default:
// Invalid Request Method
header("HTTP/1.0 405 Method Not Allowed");
break;
}
function get_employees()
{
global $connection;
$query="SELECT * FROM employee";
$response=array();
$result=mysqli_query($connection, $query);
while($row=mysqli_fetch_array($result))
{
$response[]=$row;
}
header('Content-Type: application/json');
echo json_encode($response);
}
function get_employees($id=0)
{
global $connection;
$query="SELECT * FROM employee";
if($id != 0)
{
$query.=" WHERE id=".$id." LIMIT 1";
}
$response=array();
$result=mysqli_query($connection, $query);
while($row=mysqli_fetch_array($result))
{
$response[]=$row;
}
header('Content-Type: application/json');
echo json_encode($response);
}
?>
我不知道如何从我的 Js 等调用 API。
问题是如何调用我的API。我尝试通过 localhost/api/v1/employees.php 但我得到
"CANNOT GET employees.php"
错误。
我想知道使用 Vue.js 进行 REST API 的正确方法,因为我的数据库在 XAMPP 上,我认为可能有问题。任何 link 都对了解更多很有价值。
谢谢大家!
如果您"cannot get employees.php",您的服务器可能会告诉您该文件实际上不在localhost/api/v1/employees.php
。
您能否将 employees.php
文件修改为 <?php echo 123; ?>
?
如果您遇到同样的问题,您可能没有为您的 api/server 使用正确的 URL 结构。
此外,您的服务器可能会阻止来自 Javascript 的流量,因此如果您在浏览器中看到 123
,但当您使用 AJAX 时却失败了,那么它可能是你有一个 same-origin policy 问题。
我有一个用 Vue.js 制作的项目,我 运行 通过 npm (Node) 的本地主机。
我是 Rest API 的新手。我根据互联网教程制作了一个简单的 REST API。
employees.php
<?php
// Connect to database
include("../connection.php");
$db = new dbObj();
$connection = $db->getConnstring();
$request_method=$_SERVER["REQUEST_METHOD"];
switch($request_method)
{
case 'GET':
// Retrive Products
if(!empty($_GET["id"]))
{
$id=intval($_GET["id"]);
get_employees($id);
}
else
{
get_employees();
}
break;
default:
// Invalid Request Method
header("HTTP/1.0 405 Method Not Allowed");
break;
}
function get_employees()
{
global $connection;
$query="SELECT * FROM employee";
$response=array();
$result=mysqli_query($connection, $query);
while($row=mysqli_fetch_array($result))
{
$response[]=$row;
}
header('Content-Type: application/json');
echo json_encode($response);
}
function get_employees($id=0)
{
global $connection;
$query="SELECT * FROM employee";
if($id != 0)
{
$query.=" WHERE id=".$id." LIMIT 1";
}
$response=array();
$result=mysqli_query($connection, $query);
while($row=mysqli_fetch_array($result))
{
$response[]=$row;
}
header('Content-Type: application/json');
echo json_encode($response);
}
?>
我不知道如何从我的 Js 等调用 API。 问题是如何调用我的API。我尝试通过 localhost/api/v1/employees.php 但我得到
"CANNOT GET employees.php"
错误。
我想知道使用 Vue.js 进行 REST API 的正确方法,因为我的数据库在 XAMPP 上,我认为可能有问题。任何 link 都对了解更多很有价值。
谢谢大家!
如果您"cannot get employees.php",您的服务器可能会告诉您该文件实际上不在localhost/api/v1/employees.php
。
您能否将 employees.php
文件修改为 <?php echo 123; ?>
?
如果您遇到同样的问题,您可能没有为您的 api/server 使用正确的 URL 结构。
此外,您的服务器可能会阻止来自 Javascript 的流量,因此如果您在浏览器中看到 123
,但当您使用 AJAX 时却失败了,那么它可能是你有一个 same-origin policy 问题。