• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Pusty response od serwera

Object Storage Arubacloud
0 głosów
385 wizyt
pytanie zadane 4 listopada 2022 w C# przez DzikieHarce Użytkownik (690 p.)
zmienione kategorie 6 listopada 2022 przez ScriptyChris

Stworzyłam backend w Asp.NetCore, w nim kilka endpointów, również taki, do rejestracji użytkownika. Endpoint prawdopodobnie działa, testowałam w postmanie i udało mi się stworzyć użytkownika, wszystko śmiga. Problem zaczął się, gdy stworzyłam w Reacie formularz i połączyłam się z backendem. Dostaję pusty response, jakby strona nie mogła połączyć się z serwerem. Sprawdzałam wiele razy adres, mam włączony serwer itp. i wszystko działa. Udało mi się ustalić, że wina prawdopodobnie leży po stronie certyfikacji, czyli Chrome nie chce połączyć się z bazą danych. Gdy tworzyłam backend, dostałam zapytanie o o certyfikat i wtedy "sama go sobie podpisałam", zmieniłam również adres na https. Projekt jest niekomercyjny, więc nie chcę kupować certyfikatu. Próbowałam też wyłączyć restrykcję w chromie za pomocą komendy 

--disable-web-security

Ale nadal mam ten response. Ponoć w chromie da się to jakoś wyłączyć w ustawieniach, ale nie wiem jak, ew. po stronie serwera ogarnąć certyfikat, choć też nie mam pojęcia jak. Pierwszy raz mierzę się z czymś takim i myślałam, że wystarczy, że automatycznie mi się podpisze.

1
komentarz 4 listopada 2022 przez ScriptyChris Mędrzec (190,190 p.)
Gdzie widzisz ten response - w devtoolsach? Próbowałaś sprawdzić na innej przeglądarce (np. Firefox)? Czy w konsoli przeglądarki są jakieś błędy?
komentarz 4 listopada 2022 przez Ehlert Ekspert (212,670 p.)
przeniesione 4 listopada 2022 przez ScriptyChris
Na jakim porcie odpalony jest backend?
komentarz 4 listopada 2022 przez Ehlert Ekspert (212,670 p.)
Może nie masz skonfigurowanych CORSów.
komentarz 4 listopada 2022 przez Wiciorny Ekspert (269,710 p.)
z tym, że jakby to był corse to request by przeszedl poprawnie natomiast zablokowany od strony backendu - bylby response, czesto nawet informujac o blednym origin, czy polityce CORS.
komentarz 5 listopada 2022 przez DzikieHarce Użytkownik (690 p.)

@ScriptyChris, Tak, response widze w devtoolsach, nie próbowałam nigdzie indziej, bo wolałabym, żeby to również działało na chromie.

Co do błędów:

komentarz 5 listopada 2022 przez DzikieHarce Użytkownik (690 p.)
Na porcie 5001
1
komentarz 5 listopada 2022 przez DzikieHarce Użytkownik (690 p.)
O nie, przepraszam, pustego responsa naprawiłam, dopisując s w https do adresu. Ale tak, chyba właśnie chodzi o corsy których nie umiem skonfigurować. Wybaczcie za zamieszanie.
komentarz 5 listopada 2022 przez ScriptyChris Mędrzec (190,190 p.)

nie próbowałam nigdzie indziej, bo wolałabym, żeby to również działało na chromie

@DzikieHarce, na marginesie (bo przyczyną problemu zdaje się być już wspomniany CORS) - czasem winna jest przeglądarka, więc dobrze jest sprawdzić czy na innej problem też występuje, bez względu na to, czy docelowo ma być używana ta czy inna.

komentarz 6 listopada 2022 przez DzikieHarce Użytkownik (690 p.)
W sumie racja, w takim razie sprawdzę

1 odpowiedź

+2 głosów
odpowiedź 4 listopada 2022 przez Artur Koniec Gaduła (3,670 p.)
wybrane 7 listopada 2022 przez DzikieHarce
 
Najlepsza

Nie ma u Ciebie skofigurowanego CORS w backendzie .net!  Zbadaj temat koniecznie, na razie trzymaj tutaj tutorial co zrobić by wszystko działało (.NET 6):

program.cs

builder.Services.AddCors(options =>
{
	options.AddPolicy("MyOrigins", policy =>
	{
		policy.WithOrigins("https://localhost:5001").AllowAnyMethod().AllowAnyHeader();
	});
});
app.UseCors("MyOrigins");

twój każdy controller

[EnableCors("MyOrigins")]
public class BaseController : ControllerBase
{
//Absolutnie nie ma problemu by zrobić kontroler BaseController, dziedziczący po ControllerBase (tak jak obecnie każdy twój custom controller)
//I dziedziczyć w custom controllerach po BaseController zamiast ControllerBase.
//Inaczej nad definicją klasy każdego controllera musisz dodawać to EnableCors
}

 

Trzymaj mój projekt api który nadal się tworzy, jakby nadal były problemy kopiuj z niego:

https://github.com/koniecdev/EndPlanner/tree/main/EndPlanner

Pozdro!

komentarz 8 listopada 2022 przez Artur Koniec Gaduła (3,670 p.)
@DzikieHarce Hmmm. No to 405 będzie mi ciężko wywróżyć haha. Wrzuć mi cały projekt na githuba, pobawię się, jak znajdę to co nie gra to wyjaśnię co trzeba zrobić
komentarz 13 listopada 2022 przez DzikieHarce Użytkownik (690 p.)

Ok, udało mi się jakoś to załatwić. Wybacz, że nie skorzystam z oferty, bardzo zależało mi, żeby samej sobie z tym poradzić. Co zmieniłam? Nie do końca pamiętam, w szale wpisywania wszystkiego nieco mi to umknęło ale na pewno: do posta po stronie reacta dodałam nagłówki i zakomentowałam [EnableCors("CorsPolicy")]. Politykę corsową przeniosłam do useCors w Configure, o tak:

app.UseCors(builder => builder
                .WithOrigins("http://localhost:3000")
                .AllowAnyMethod()
                .AllowAnyHeader());

 

komentarz 13 listopada 2022 przez DzikieHarce Użytkownik (690 p.)
Jasne, dzięki!
komentarz 14 listopada 2022 przez Artur Koniec Gaduła (3,670 p.)

@DzikieHarce, Najważniejsze że działa, pozderki

komentarz 16 listopada 2022 przez DzikieHarce Użytkownik (690 p.)
To ja dziękuję, otrzymałam dużo dobrych podpowiedzi ;P

Podobne pytania

0 głosów
0 odpowiedzi 76 wizyt
pytanie zadane 5 maja 2020 w PHP przez tgv Użytkownik (890 p.)
0 głosów
1 odpowiedź 235 wizyt
pytanie zadane 16 czerwca 2017 w PHP przez dervil Gaduła (3,030 p.)
0 głosów
0 odpowiedzi 171 wizyt
pytanie zadane 15 września 2019 w Sieci komputerowe, internet przez Daniel Mazur Obywatel (1,160 p.)

92,551 zapytań

141,393 odpowiedzi

319,523 komentarzy

61,936 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...