首页 > 解决方案 > 使用 Vue.js 的 REST API 中出现“无法获取”错误

问题描述

我有一个用 Vue.js 制作的项目,我通过 npm (Node) 运行 localhost。

我是 Rest API 的新手。我按照互联网教程制作了一个简单的 REST API。

员工.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 但我得到了

“无法获取员工.php”

错误。

我想知道使用 Vue.js 制作 REST API 的正确方法,因为我在 XAMPP 上有我的数据库,我认为可能存在问题。任何链接对于了解更多信息都是有价值的。

谢谢大家!

标签: phprestapivue.jsvue-router

解决方案


如果您“无法获取 employees.php”,则您的服务器可能会告诉您该文件实际上不在localhost/api/v1/employees.php.

你能修改你的employees.php文件来阅读<?php echo 123; ?>吗?

如果你遇到同样的问题,你可能没有为你的 api/server 使用正确的 URL 结构。

此外,您的服务器可能会阻止来自 Javascript 的流量,因此如果您123在浏览器中看到,但是当您使用 AJAX 时它会失败,那么可能是您遇到了同源策略问题。


推荐阅读