HTTPS-аутентификация Webkit - PullRequest
3 голосов
/ 04 июня 2011

Я работаю над своим первым приложением Windows Forms для использования WebKit.Net.Мне нужно подключиться к сайту https и открыть форму авторизации.Используя встроенный в .Net браузер, форма аутентификации всплывает автоматически, но WebKit просто оставляет меня на странице ошибки аутентификации 401, и я не могу понять, как сделать так, чтобы она аутентифицировалась.Есть идеи?

Даже если я смогу понять, как это сделать в базовой библиотеке webkit, я смогу затем изменить WebKit.Net, чтобы он поддерживал ее, но я даже не могу этого найти.Я попытался поискать источник хрома, чтобы увидеть, как они справляются с этим, но это было далеко над моей головой.Любая помощь приветствуется.

~ therealmitchconnors

ОБНОВЛЕНИЕ: WebKit.NET построен на порте WinCairo WebKit, который использует CFLite вместо закрытой библиотеки Apple CFNetwork.Очевидно, что CFLite не поддерживает Authentication Challenge, который является «правильным» способом сделать это.Итак, я добавил некоторый код в WebResourceLoadDelegate для проверки имени пользователя и пароля, и, если он был указан, но заголовок не включен, отмените этот веб-запрос и повторно вызовите метод навигации, включая имя пользователя и пароль.Это действительно уродливый хак, но это работает.Проверьте это в webkitdotnet / therealmitchconnors.

Теперь, чтобы выяснить, как закрыть вопрос ...

1 Ответ

1 голос
/ 07 августа 2012

В API нет способа сделать это. См. Мое обновление выше для моего обходного пути.

...