Обратный звонок для входа в Google через POST вместо GET

В настоящее время я использую библиотеку (SocialAuth.NET - http://code.google.com/p/socialauth-net/) для обработки входа на нескольких социальных платформах.

До сих пор с Facebook и Twitter у меня не было никаких проблем. Однако при попытке реализовать процесс входа в Google иногда (по-видимому, случайно) возникает ошибка.

Проведя некоторое исследование (отладка библиотеки и использование Fiddler и т. Д.), Я пришел к выводу, что иногда процесс входа в систему в Google возвращается к моему обработчику аутентификации через POST, а не через GET. Используя Fiddler, я смог четко определить все параметры внутри тела сообщения (в случае обратного вызова POST) или строки запроса (в случае обратного вызова GET), поэтому Google правильно зарегистрировал моего пользователя.

Это вызывает исключение в методе библиотеки SocialAuth.NET, так как он ожидает, что все параметры будут переданы в строке запроса, и, таким образом, процесс входа не будет выполнен (с моей стороны, очевидно, - Google считает, что я вошел в систему, так как на его стороне все прошло нормально)

В заключение я спрашиваю: почему иногда Google отвечает на мой сервер через POST вместо GET? Что-то, что я должен сделать, чтобы избежать этого, или это потребует изменения в библиотеке SocialAuth.NET?

1 ответ

До сих пор я не сталкивался с этой проблемой с Google. Он всегда возвращает информацию в строке запроса. Замечательно, если вы можете как-то определить точные шаги репликации. В любом случае, если вы хотите изменить библиотеку для проверки POST, вам нужно изменить метод ProcessRequest в Core/callbackHandler.cs (скорее всего, строка 76).

Другие вопросы по тегам