PayPal IPN отправляет запрос POST с переменным количеством полей на URL-адрес уведомления, чтобы подтвердить, что запрос POST является законным, и нам нужно повторно отправить тот же запрос вместе с дополнительным полем cmd=_notify-validate
в PayPal, которое ответы VERIFIED
или INVALID
.
Мой вопрос: зачем нам отправлять запрос в PayPal? Разве этого не достаточно?
if (preg_match('~^(?:.+[.])?paypal[.]com$~i', gethostbyaddr($_SERVER['REMOTE_ADDR'])) > 0)
{
// request came from PayPal, it's legit.
}
Если мы можем доверять серверу для правильного разрешения IP-адресов, я полагаю, что мы можем доверять всем запросам от PayPal, нет?