Chrome nie wyświetla żądań OPCJI na karcie Sieć


83

Moja aplikacja klienta WWW ustawia żądania HTTP POST za pośrednictwem interfejsu API pobierania.

Widzę, że żądania OPCJI inspekcji wstępnej są wysyłane przez serwer proxy debugowania (serwer proxy Charles), ale nie są wyświetlane na karcie Narzędzia programistyczne Google Chrome \ Sieć.

Nie mam żadnych ustawień filtrów na karcie sieci. Pamiętam, że żądania OPCJI były tam widoczne, ale już ich nie ma. Jak je przywrócić?

Odpowiedzi:


145

Musisz udać się do: chrome://flags/#out-of-blink-cors, wyłączyć flagę i uruchom ponownie Chrome.

Jest to oczekiwana zmiana zachowania według:
https://bugs.chromium.org/p/chromium/issues/detail?id=995740#c1

Pierwotnie trafiłem na to przez:
https://support.google.com/chrome/thread/11089651?hl=en


3
To zadziałało. Ale nie mogłem znaleźć na połączonych stronach, co robi to ustawienie „bez mrugnięcia okiem”. Mrugnięcie to nazwa silnika chrome - więc jaki komponent robi zamiast niego cors? A co skutecznie zmieniło się w przypadku zwykłych witryn internetowych, które nie są rozszerzeniami Chrome?
Ubeogesh

Wyobrażam sobie, że obsługa corsów została przeniesiona do silnika - niższy poziom niż ma dostęp devtools. Ale możesz wyłączyć tę optymalizację.
George Mauer

26
Takie zachowanie znacznie utrudni życie nowicjuszom. To w zasadzie ukrywanie odpowiedzi na błędy.
Claudio Holanda

Chrome 79+ nie wyświetla już żądań CORS inspekcji wstępnej. Możesz na przykład użyć przeglądarki Firefox, aby to zobaczyć.
mkupiniak

2
Dobre wieści od osoby wdrażającej Chrome, która pracowała nad powiązanym kodem: Zobacz odpowiedź na stackoverflow.com/a/62590759/441757 „Chrome 83 ponownie implementuje obsługę narzędzi DevTools w ramach wstępnej inspekcji CORS w bezpieczny sposób. Możesz więc monitorować żądania wstępnego CORS-a tak, jak robiłeś to przed procesem Out-Of-Blink / Renderer CORS ”
sideshowbarker

17

Chrome 81 nie wydaje się nic wyświetlać nawet po zmianie opcji i ponownym uruchomieniu na moim komputerze.

Jako alternatywne rozwiązanie zacząłem używać Firefoksa i jego zakładki Sieć do programowania.

wprowadź opis obrazu tutaj

https://getfirefox.com


1
Używam Chrome 81 i zmiana flagi zgodnie z sugestią jms zadziałała.
Gustavo Straube

@GustavoStraube Hmmm. Czy korzystasz z jakiego systemu operacyjnego?
Mikko Ohtamaa

MacOS Mojave (10.14.6)
Gustavo Straube

1
Widziałem to zachowanie podczas testowania witryny korzystającej z podstawowego uwierzytelniania http. Nawet jeśli nie jesteś zalogowany na innej karcie wniosek inspekcji wstępnej zawsze niepowodzeniem (v84)
koosa

7

Jestem Takashi z Chromium Project i prowadziłem projekt Out-Of-Blink / Render CORS.

Projekt miał na celu wprowadzenie izolowanej procesowo implementacji CORS w celu zwiększenia bezpieczeństwa i prywatności, a wiele nowych funkcji związanych z siecią opiera się na tej nowej implementacji. Niestety tymczasowo wyłączyliśmy obsługę inspekcji wstępnej w DevTools, ponieważ okazało się, że dalsze jej wspieranie osłabia bezpieczeństwo i prywatność. Przepraszamy za niedogodności w tym okresie.

Dobra wiadomość jest taka, że ​​Chrome 83 ponownie wdraża obsługę narzędzi DevTools w ramach inspekcji wstępnej CORS w sposób z zachowaniem bezpieczeństwa. Możesz więc monitorować żądania inspekcji wstępnej CORS, tak jak przed wystąpieniem CORS Out-Of-Blink / Renderer.

Najlepsza,


6
Używam najnowszego chrome na macOS i nadal nie widzę OPCJI w inspektorze sieci. Wsparcie?
Miguel Ribeiro

2
Chrome 83.0.4103.116 (Mac OS) - nadal brak informacji przed lotem w panelu sieci. Czy jest jakaś flaga, którą należy włączyć?
EK0

4
Chrome 83.0.4103.116 (oficjalna kompilacja) (64-bitowy) na MacOs również nadal nie wyświetla się przed lotem. A eksperymentalna opcja braku mrugnięcia okiem nie jest już dostępna.
Ben K,

1
Czy możesz wypróbować następującą stronę? yuri.twintail.org/chrome/cors/preflight.html 1) Otwórz DevTools 2) Kliknij przycisk „Make cors fetch” 3) Zobaczysz dwa żądania dla 918322_21.cgi, jeden nie odpowiada aktualnemu żądaniu, a drugi 200 do inspekcji wstępnej. Uwaga: jeśli żądanie trafi do pamięci podręcznej inspekcji wstępnej CORS, nic nie pokazujemy, ponieważ Chrome nie wysyła inspekcji wstępnej. Oczekuje się, że opcja „Wyłącz pamięć podręczną” w DevTools złagodzi ten problem, ponieważ pamięć podręczna inspekcji wstępnej jest również wyłączona przy użyciu tej opcji.
Takashi Toyoshima,

12
U mnie z Chrome 84 / Win10 żądania OPCJI pojawiają się na karcie Sieć, jeśli wybierzesz filtr „Wszystkie”, ale nie, jeśli wybierzesz filtr „XHR”. Co jest denerwujące, ponieważ wtedy muszę przebrnąć przez dziesiątki innych próśb, na których mi nie zależy. Masz jakiś pomysł, dlaczego nie możesz ich pokazać w obu miejscach?
Chris Tybur
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.