如何使用PHP cURL从第三方api获取数据?

时间:2019-03-27 06:40:17

标签: php curl

我想从一个API提取json数据,但出现以下错误

  

HTTP / 1.1 500内部服务器错误   缓存控制:无缓存   语法:无缓存   内容类型:application / json;字符集= utf-8   过期:-1   伺服器:Microsoft-IIS / 7.5   X-AspNet版本:4.0.30319   X-Powered-by:ASP.NET   日期:2019年3月27日,星期三06:07:40 GMT   内容长度:36

{"Message":"An error has occurred."}

它与邮递员一起使用。发送请求时是否有语法错误?

这是我的代码

<?php
        //  Initiate curl
            //$post = "NoofAdult=1&NoofChild=1&NoofInfant=1&FromAirportCode=AMD&ToAirportCode=BOM&DepartureDate=21/06/2019&ReturnDate&TripType=1&FlightClass=Y&SpecialFare=0&AirlineType=A";
            $postData = array(
                'NoofAdult' => '1',
                'NoofChild' => '1',
                'NoofInfant' => '1',
                'FromAirportCode' => 'AMD',
                'ToAirportCode' => 'BOM',
                'DepartureDate' => '21/06/2019',
                'ReturnDate' => '',
                'TripType' => '1',
                'FlightClass' => 'Y',
                'SpecialFare' => '0',
                'AirlineType' => 'A'

                );
            $header_data = array(
                        "Content-Type: application/json",
                        "Accept-Encoding: gzip, deflate",
                        "InterfaceCode:1",
                        "InterfaceAuthKey:1",
                        "AgentCode:",
                        "Password:"
                    );

            $ch = curl_init();
            $curlOpts = array(
                CURLOPT_URL => 'http://stagingv2.flightmyweb.com/API/FlightAvailibility',
                //CURLOPT_URL => 'http://localhost/akshay/sampleapi.php',
                CURLOPT_RETURNTRANSFER => true,
                CURLOPT_HTTPHEADER => $header_data,
                CURLOPT_FOLLOWLOCATION => true,
                CURLOPT_POST => true,
                CURLOPT_POSTFIELDS => $postData,
                CURLOPT_HEADER => 1,
            );  
            curl_setopt_array($ch, $curlOpts);
            curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Length: 0'));   
            $answer = curl_exec($ch);
            // If there was an error, show it
            if (curl_error($ch)) {
                die(curl_error($ch));
            }

            curl_close($ch);
            echo '<pre>';
            print_r($answer);
            echo '</pre>';



            // Will dump a beauty json :3
            //var_dump(json_decode($result, true));

        //echo json_encode($outp);
?>

我需要json输出:

0 个答案:

没有答案