2015-11-27 2 views
1

Нам нужно протестировать сайт, для которого требуется проверка подлинности Windows. Мы попытались автоматизировать его с использованием Casperjs, но мы продолжали получать 401.Как заставить Casperjs работать с аутентификацией Windows

Мы обнаружили, что другие аналогичные проблемы были основаны на следующих discussion. Однако обсуждение было закрыто без реальных решений.

Кто-то в этом обсуждении отметил, что он использовал page.customHeader с дополнительными обходными решениями, но никаких реальных шагов по тому, как заставить это работать, не было.

Мы также попробовали обновить url до http://username:[email protected] pattern & даже это не помогло.

ответ образец знакомства Fiddler, когда я попытался это в

GET/HTTP/1.1 
Host: host 

HTTP/1.1 401 Access Denied 
WWW-Authenticate: Negotiate 
WWW-Authenticate: NTLM 


GET/HTTP/1.1 
Host: host 
Authorization: NTLM TlRMTVNTUAABAAAAB4IAoAAAAAAAAAAAAAAAAAAAAAB= 

HTTP/1.1 401 Access Denied 
WWW-Authenticate: NTLM TlRMTVNTUAACAAAADAAMADAAAAAFgoGgCY6qiih5j bAAAAAAAAAAAH4AfgA8AAAAUABPAFIAVAA4ADAAAgAMAFAATwBSAFQA OAAwAAEACgBKAEwASQBNAEEABAAkAH 

ответ

0

На самом деле был хорошим решением sugguested в вопросе обсуждения PhantomJS GitHub. Вы можете использовать a local NTLM proxy и подключиться к нему через CasperJS так:

casperjs --proxy=localhost:3133 --ignore-ssl-error=true --ssl-protocol=any script.js