Mobile Edge For Android, проблема перенаправления 302 с Service Worker и файлом cookie для аутентификации - PullRequest
0 голосов
/ 18 января 2019

У меня есть сайт PWA, который отлично работает на Firefox, Chrome и Edge на Windows, и все на Android, Edge (EdgeA).

Проблема Вот что я знаю по просмотрам журналов моего сервера Azure:

(1) POST входа в систему запускается на контроллере Core 2.2, который выполняет аутентификацию, и возвращает 302 вместе со стандартным набором cookie-файлов Core 2.2, включая маркер аутентификации для пользователя.

(2) Браузер EdgeAndroid получает это и немедленно ПОЛУЧАЕТ указанное местоположение ... кроме того, что это ПОЛУЧЕНИЕ не включает файлы cookie из (1), поэтому система Core 2.2 отвечает 302 обратно на страницу входа .

Это цикл перенаправления.

-> EdgeA ест мои печенья!

Я могу отлично выполнить это в указанных выше браузерах, и в журналах показано, что Edge / Windows, например, имеет последовательность (1) (2) именно так, как вы и ожидаете, с учетными данными cookie во втором запросе.

Единственное, что отличается, это Edge Android. Я удалил все кэширование от своего сервисного работника для этого браузера, и он все еще не работает - я думаю, что мне может понадобиться просто не запускать сервисный работник для него вообще.


... и мои вопросы:

  1. У кого-нибудь есть PWA, который действительно работает в EdgeA?
  2. Кто-нибудь знает, что я пропустил? Обратите внимание, что это только один браузер, который не работает, следовательно, это может быть не я.
  3. В случае, если это не я, есть ли место, где я еще не гуглил, где я могу сообщить о дефектах в этом браузере, возможно, небольшого интереса?

Это звучит похоже, хотя это междоменное, а мой 302 не междоменный.

1 Ответ

0 голосов
/ 21 января 2019

Я думаю, это было вызвано тем, что браузер Edge Android интерпретировал директиву display:standalone и, следовательно, открыл «автономное» окно, которое не переносит файлы cookie из исходного браузера.

Журналы сервера показывают, что клиент EdgeA «отбрасывает куки» при обработке «входа в систему» ​​302 от стандартного входа в систему Core 2.2.

Моя работа заключается в том, чтобы предоставить конкретный manifest.json браузеру EdgeA, чтобы он читал display:browser.


В то же время я исправил эту MS и выпустил новую версию EdgeA, поэтому я не могу быть на 100% уверен, исправили ли мои изменения это или они действительно слушали мое нытье.

...