Ответ AOL OpenID слишком длинный - PullRequest
1 голос
/ 25 февраля 2010

Я написал приложение, использующее библиотеку DotNetOpenAuth, которая позволяет пользователям проходить аутентификацию по нескольким поставщикам OpenID. Все они работают нормально, за исключением AOL, который по тем или иным причинам создает возвращаемый URL длиной более 2200 символов, длина которого превышает максимальную длину URL (2048) для большинства браузеров.

Кто-нибудь испытывал это? Есть ли способ ограничить количество параметров (в частности, специфичных для dnoa параметров), передаваемых поставщику?

Настоящая проблема - это параметр "openid.return_to", который является дубликатом всего URL, но это проблема спецификации OpenID и, следовательно, не может быть легко исправлена.

Спасибо за помощь, Garrett

Ответы [ 2 ]

2 голосов
/ 26 февраля 2010

Развернутый в настоящее время поставщик OpenID AOL не поддерживает метод перенаправления HTTP POST. Новая версия поставщика OpenID AOL, который также поддерживает OpenID 2.0, будет развернута в ближайшие пару недель. Однако в то же время должно быть возможно использовать SREG и запрашивать только те атрибуты, которые вам нужны. Я успешно протестировал путь SREG с помощью http://test -id.org и тест SREG.

1 голос
/ 26 февраля 2010

Вы можете передать свое собственное значение return_to в DotNetOpenAuth. И если вы не передадите аргументы обратного вызова, которые должны быть подписаны, вы не должны видеть слишком много префиксных параметров dnoa. Если вы видите больше, чем считаете разумным, приложите журналы к вашему вопросу, и мы сможем оценить это.

Короче говоря, AOL, вероятно, должен использовать HTTP POST вместо 301 Redirect в этом сценарии.

...