Не получить PHP мыло API резонанс на сервере в случайное время - PullRequest
0 голосов
/ 05 апреля 2019

На моем сервере разработки и производства возникла странная проблема, связанная с soap api.

Мы включили множество сторонних API-интерфейсов для мыла, которые получают данные от сторонних производителей и отображают данные на нашем сайте.Очень хорошо. Большую часть времени API работают отлично. Это случается через какой-то случайный период времени, когда мыльный api-ответ становится пустым, и мы получаем 0 в api-ответе. Мы обсуждали эту проблему со сторонним сервисом, и после проверки они ответили, что, они предоставляют все без исключения ответы с нашей стороны. Может ли кто-нибудь мне подсказать, касается ли это проблемы кода или базы сервера?и как избавиться от него, поскольку он теряет бизнес клиента из-за этого.

Ниже приведены основные функции нашего вызова WSDL из функции мыла PHP.

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

        $wsdl = 'URL';
        $options = array(
        'cache_wsdl' => 0,
        'trace' => 1,
        'stream_context' => stream_context_create(array(
              'ssl' => array(
                   'verify_peer' => 0,
                    'verify_peer_name' => 0,
                    'allow_self_signed' => 1
              )
        )));

        $soapCall = new SoapClient($wsdl,$options);
        try {
                $response = $soapCall->__soapCall("API_FUNCTION", array($params));
                //Save records to log
                $requestParamLogs =  $soapCall->__getLastRequest();
                $responseParamLogs = $soapCall->__getLastResponse();                                                                    
            }
        catch (SoapFault $e) {
            $requestParamLogs =  $soapCall->__getLastRequest();
            $responseParamLogs = $soapCall->__getLastResponse();                
        }

Несмотря на то, что мы сталкиваемся с такой случайной проблемой на нашем сервере развертывания и производства, такой проблемы на локальном сервере не возникает.

Примечание: Мы получаем ответ каждого API в почтальоне без проблем все время.

Я попробовал Google для этого, но не нашел ничего подходящего решения для моего случая, так что у кого-то есть идея,пожалуйста, направь меня.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...