Вызов внешнего api в другом api codeigniter

#php #api #codeigniter #curl

#php #API #codeigniter — инициализатор кода #завиток

Вопрос:

Привет, мы работаем с api в codeigniter и отлично. Наш вопрос заключается в том, как мы можем получить доступ к api в другом api codeigniter, https://wgllocalmart.store/restprj/api/cartlist это точка api, мы хотим получить доступ к другому api https://wgllocalmart.store/restprj/api/verifyCart , который принимает данные post, но мы не получаем никакой ошибки или кода ответа. Мы установили токен глобально в post man. Код выглядит следующим образом

 function cartlist(){
$data1 = "123456";
$data2 = "steve";
$data3 = "120.00";
    $post_data = '{"invoice" : "'.$data1.'" , "name" : "'.$data2.'","amount" : "'.$data3.'" }';
    
      $options = [ 
        CURLOPT_HTTPHEADER => [
            'Content-Type: application/json',
            'Content-Length: ' . strlen($post_data),
          
        ]
    ];
    
     
     
    $handler = curl_init();
    $url = "https://wgllocalmart.store/restprj/api/verifyCart";
    curl_setopt($handler, CURLOPT_URL, $url);
    curl_setopt($handler, CURLOPT_POST, 1);
    curl_setopt($handler, CURLOPT_POSTFIELDS, $post_data);
    curl_setopt($handler, CURLOPT_VERBOSE, 0);
    curl_setopt($handler, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($handler, CURLOPT_SSL_VERIFYPEER, 0);
    curl_setopt_array($handler, $options);
    // curl_exec($handler);
    $JSON = curl_exec($handler);
    
    //print_r(curl_getinfo($handler));
    if ($JSON === false) {
        return "CURL Error: " . curl_error($handler);
    }else{
        echo "***else";
        $outputArray = json_decode($JSON);
        print_r(curl_error($handler));
    }
}
 

мы также установили ошибки в качестве

 ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);
 

Пожалуйста, подскажите нам правильный путь, почему api не работает и ошибка не возникает. Заранее благодарю.

Комментарии:

1. Откуда вы $data1, $data2.... в первой строке cartlist() беретесь? Является ли это просто проблемой определения масштаба?

2. Ваш ELSE только выводит echo "***else"; , что он пытается json_decode() что-то сделать, но он не возвращает это или не повторяет это, а затем пытается вывести print_r()

3. В API, вызывающем API, нет ничего сложного, но если вы хотите узнать состояние или статус вызова внутреннего API, вы должны убедиться, что все это передается обратно в первый API для дальнейшей передачи