找不到 VueJS POST 404

我的目标是将我的 Quasar 应用程序运行到连接到局域网的其他设备。POST http://10.0.0.20:8080/MyComposer/?submitId=3 404 (Not Found)尽管我之前在我的本地主机上工作正常,但当我登录网站时,我设法按预期运行它们,但我遇到了这个错误。为什么它不能正确读取后端文件夹中我的 index.php 中的类?


PS 我不知道这是否可以解决我的问题,但是当我使用 phpinfo() 进行调试时,我注意到那里的 REQUEST_METHOD 是 GET 而不是 POST。是否可以交换它们?我会尝试你们给我的任何东西。


安慰


General

Request URL: http://10.0.0.20:8080/MyComposer/?submitId=3

Request Method: POST

Status Code: 404 Not Found

Remote Address: 10.0.0.20:8080

Referrer Policy: no-referrer-when-downgrade


Response Headers

Connection: keep-alive

Content-Length: 151

Content-Security-Policy: default-src 'none'

Content-Type: text/html; charset=utf-8

Date: Tue, 28 Jul 2020 12:18:12 GMT

Vary: Accept-Encoding

X-Content-Type-Options: nosniff

X-Powered-By: Express


Request Headers

Accept: application/json, text/plain, 

Accept-Encoding: gzip, deflate

Accept-Language: en-US,en;q=0.9,es;q=0.8

Connection: keep-alive

Content-Length: 49

Content-Type: application/json

Host: 10.0.0.20:8080

Origin: http://10.0.0.20:8080

Referer: http://10.0.0.20:8080/

User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.105 Safari/537.36

标题.php


<?php

header('Access-Control-Allow-Origin: http://10.0.0.20:8080/'); //OR EITHER http://10.0.0.20:8080/ OR .$_SERVER['HTTP_ORIGIN']

header('Access-Control-Allow-Credentials: true');

header('Access-Control-Allow-Max-Age: 3600');

if (strtoupper($_SERVER['REQUEST_METHOD']) === 'OPTIONS') {

    if (isset($_SERVER['HTTP_ACCESS_CONTROL_REQUEST_METHOD']))

        header("Access-Control-Allow-Methods: GET, POST, PUT, DELETE, OPTIONS");

    if (isset($_SERVER['HTTP_ACCESS_CONTROL_REQUEST_HEADERS']))

        header("Access-Control-Allow-Headers: {$_SERVER['HTTP_ACCESS_CONTROL_REQUEST_HEADERS']}");

    exit(0);

}

倚天杖
浏览 224回答 1
1回答

喵喔喔

该问题不是由编码错误引起的,而是由于在受影响的系统上安装了两个网络服务器,一个 XAMPP 安装在默认端口 80 上运行,一个 Node.Js 服务器在端口 8080 上运行。为了诊断问题,我们首先将脚本中使用的 URL 复制粘贴到浏览器窗口中,该窗口给出了相同的 404 HTTP 错误。这排除了axios.post()方法导致行为的选项。接下来测试了基本的 HTTP 端口分配。调用地址http://10.0.0.20(用户在本地网络中的 IP)给出了正确的 XAMPP 主页。在检查httpd.conf和其中的Listen设置(应该是Listen 8080)时,我们看到 Apache 使用的是默认 HTTP 端口。将其更改为 8080(如脚本中所用)并重新启动 Apache 导致服务器无法启动并出现错误:检测到问题!PID 为 3808 的“C:\Program Files\nodejs\node.exe”正在使用端口 8080!如果配置的端口空闲,Apache 将不会启动!您需要卸载/禁用/重新配置阻止应用程序或重新配置 Apache 和控制面板以侦听不同的端口。现在可以确定问题的原因是端口混乱。从脚本中删除:8080确保将请求发送到正确的服务器。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript