Jeg har en WordPress-backend der jeg har lagt til mine egne tilpassede sluttpoeng til API:
// retrieve countries
register_rest_route( $namespace, '/countries',
array(
'methods' => 'GET',
'callback' => array( $this, 'get_countries' ),
)
);
// check answer
register_rest_route( $namespace, '/check_answer',
array(
'methods' => 'POST',
'callback' => array( $this, 'check_answer' ),
)
);
Jeg har satt opp miljøet mitt slik: https://example.com er der React-applikasjonen bor, og WordPress er i en underkatalog, på https://example.com/wp
Min React-applikasjon sender POST- og GET-forespørsler til disse sluttpunktene ovenfor. Jeg har en produksjonsmiljøvariabel der jeg angir grunnadressen til API, som er https://example.com/wp/wp-json/game
('spillet' er mitt navnområde), og derfor kan jeg stille forespørsler med Axios til https://example.com/wp/wp-json/game/countries
og https://example.com/wp/wp-json/game/check_answer
og her kommer saken.
Serveren min er konfigurert slik at den serverer React-applikasjonen både som uten www
. Så https://example.com og https://www.example.com begge deler den samme applikasjonen.
Men dette genererer noen interessante problemer for mine tilpassede sluttpunkter: GET-forespørselen fungerer alltid. men POST-forespørselen fungerer bare hvis jeg prøver den fra https://example.com , IKKE fra https://www.example.com . I tilfelle av sistnevnte viser det meg bare en mislykket forespørsel. Ingen respons, ingenting.
Jeg har googlet og det ser ut til å være relatert til CORS, men jeg klarte ikke å fikse det. Noen ideer her?