如何修复“无法连接到127.0.0.1:5000;连接被拒绝”从PHP到Flask

时间:2019-10-30 15:51:04

标签: php curl flask

我希望你们中有人可以帮助我。在发生此错误之前,服务器可以正常运行,但是我们团队中的某人进行了一些更改,使网页崩溃了。

我有一台运行在127.0.0.1:5000上的Flask服务器,我在centos shell上运行了http://127.0.0.1:5000/url?param1=val1&param2=val2,并且从Flask得到了json响应。

我还用以下代码(sudo php test.php)运行了一个PHP文件,从Flask获取json响应:

<?php
        // Get cURL resource
        $curl = curl_init();

        // Set some options - we are passing in a useragent too here
        curl_setopt_array($curl, [
            CURLOPT_RETURNTRANSFER => 1,
            CURLOPT_URL => 'http://127.0.0.1:5000/url?param1=val1&param2=val2',
        ]);

        // Send the request & save response to $resp
        $resp = curl_exec($curl);

        // Close request to clear up some resources
        curl_close($curl);

        echo ($resp);
?>

当我尝试从html表单发送GET请求时,我从curl_error($curl)收到以下消息

  

无法连接到127.0.0.1:5000;连接被拒绝

我已经尝试过通过CURL发送请求,并且只发送了不带html形式的PHP,就像我之前提到的那样,它无需任何端口配置即可工作。

<?php
session_start();

if (!empty($_POST['name1']) && !empty($_POST['name2']))
{
    // Get cURL resource
    $curl = curl_init();

    // Set some options - we are passing in a useragent too here
    curl_setopt_array($curl, [
            CURLOPT_RETURNTRANSFER => 1,
            CURLOPT_URL => 'http://127.0.0.1:5000/url?param1='. $_POST['name1'] . '&param2='.$_POST['name2'],
    ]);

    // Send the request & save response to $resp
    $resp = curl_exec($curl);

    if ($resp == false){
        echo(curl_error($curl));
    } 
    else{
        $_SESSION['checkin'] = $resp;   
        header("Location: url.php");
    }

    // Close request to clear up some resources    
    curl_close($curl);
}

?>

我想要一个json响应{“ key”:“ data”}。如果我发送了一个curl或仅发送了PHP代码,它就可以工作,但是如果我从HTML表单中调用该代码,它将在浏览器中返回消息。

  

无法连接到本地主机:5000;连接被拒绝

0 个答案:

没有答案