Я создаю платежный плагин WordPress для woocommerce и API внутри внутреннего сервера Nodejs для подключения.
Я использую curl для вызова API ('https://test.com/test') как обычно:
$curl = curl_init($url);
curl_setopt_array($curl, array(
CURLOPT_POST => true,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HEADER => false,
CURLOPT_HTTPHEADER => $header,
CURLOPT_POSTFIELDS => json_encode($body)
));
$result = curl_exec($curl);
curl_close($curl);
$response = json_decode($result);
И затем в моем API я должен получить и проверить параметры POST, а затем перенаправить на другой маршрутизатор ('https://test.com/рендер) для отображения страницы просмотра ejs. я пытался использовать
res.redirect(307, 'https://test.com/test')
или
res.writeHead(307, { 'Location': 'https://test.com/test' });
res.end();
или отображать страницу напрямую
res.render('index', { merchantUser: UserID });
или даже
window.location.href = 'https://test.com/test'
Но первые три возвращали NULL напрямую, а последний возвращал «окно не определено». И ни один из них не достигает маршрутизатора перенаправления ('https://test.com/рендер).
Это все, что я могу найти в Интернете, может ли кто-нибудь помочь мне или дать мне несколько советов? Большое спасибо.
@mooga В моем вопросе я попробовал res.redirect(), res.writeHead(), res.render(). До этого я только собирал данные и проверял их достоверность.






Я бы посоветовал вам дождаться ответа от первого API NodeJs и проверить http-код ответа, если он равен 200, а затем нажать другой API NodeJs.
ИЛИ отправьте ответ от NodeJs API, как это и эхо-ответ в php:
res.send('<script>window.location.href = "your URL";</script>');
ИЛИ завершите весь процесс NodeJs сразу и отправьте страницу просмотра ejs (html) в ответ на запрос php curl
не могли бы вы показать свой код для получения API, где вы хотите сделать перенаправление