首页  >  问答  >  正文

使用 formdata 模块使用 Node js 和 axios 将文件发布到 php 服务器时出现 503 错误

我正在尝试将文件从我的 Node js 应用程序发送到托管 opencart 应用程序的 PHP 服务器。 我正在使用 formdata 和 axios 模块来发出请求并上传文件。

我的问题是我收到此错误 错误:请求失败,状态代码 503

如何解决?

这是我在 Node.js 中的代码:

let form = new FormData();
form.append("file", fs.createReadStream(path.resolve(zipFilePath)), path.basename(zipFilePath));

            try {
                let response = await axios.post(endpoint, form, {
                    headers: {
                        ...form.getHeaders(),
                    },
                });

                const result = response.data;
                if (result && result.status === "success") {
                    fs.unlinkSync(zipFilePath);
                }
            } catch (e) {
                console.log(e.toString());
            }

和 php 代码(控制器中的函数):

public function upload() {
        header('Access-Control-Allow-Origin: *');
        
        if ($_SERVER['REQUEST_METHOD'] == 'OPTIONS') {
            $this->response->setOutput(json_encode([]));
        } else {
            // process the file posted
        }
    }

P粉502608799P粉502608799210 天前317

全部回复(1)我来回复

  • P粉436052364

    P粉4360523642024-02-27 09:01:35

    问题已解决。

    问题是opencart应用程序在后端设置为维护模式,但前端仍然正常工作,所以之前没有注意到。

    回复
    0
  • 取消回复