Я нашел интересную проблему при попытке входа в систему с помощью PhantomJS. Я не понимаю, почему это происходит на самом деле.
В основном вы запускаете удаленный отладчик, например:
/usr/local/bin/phantomjs --web-security=no --remote-debugger-port=13379 --remote-debugger-autorun=yes /tmp/test.js
В удаленном отладчике:
> location.href = "https://www.mysite.com/login"
> $('input[name="username_or_email"]').val('[email protected]')
> $('input[name="password"]').val('wrongpassword')
> $('button[type="submit"]').submit()
Выполнение этого в Chrome даст мне правильное сообщение "неправильного пароля" после запроса XHR, тогда как использование phantomjs дает мне общую ошибку, поскольку cookie не отправляется с phantomjs (я рассмотрел заголовки).
Я очень смущен тем, почему phantomjs не отправляет cookie с запросом POST. Кто-нибудь знает, как мы можем получить phantomjs для отправки cookie с ВСЕМИ запросами, как и должно быть? Настройка файла cookie также не имеет никакого значения.