Jag underhåller en gammal .aspx
sida där all data krävs av sidan för att visa att innehållet skickas i URL: en till GET
-begäran som en del av frågesträngen. Resultatet av detta är att när vi fortsätter att lägga till funktioner fortsätter webbadressen att bli större.
Jag tänker flytta alla parametrar från frågesträngen till kroppen för GET
-begäran.
Är det ett bra designbeslut och vad är användningsfallet för en kropp i GET
begäran?
Kommentarer
Svara
GET-förfrågningar med en kropp stöds i HTML-specifikationerna.
Se Stack Overflow-frågan Är detta uttalande korrekt? HTTP GET-metoden har alltid ingen meddelandekropp för en diskussion.
Det är dock ovanligt. Du kommer att överraska människor med den lösningen. Att bara byta till en POST är en bättre idé.
Den enda nackdelen (uppåt?) är irriterande RESTfulness-acolyter.
Kommentarer
- det finns tekniska nackdelar eftersom många javascript-bibliotek inte ' t stöder GET med en kropp. För databaser där du utför en sökning är det logiskt att göra det på det sättet, men du skulle inte ' t kunna ringa samtalet från en enstaka sida till din ElasticSearch eller SOLR-instans (de enda API: er där jag såg den här kombinationsrutan implementerad).
- Den här frågan säger samma sak: stackoverflow.com/questions/978061/http-get-with-request-body " Ja. Med andra ord, alla HTTP-förfrågningar meddelande får innehålla en meddelandetext och måste därför analysera meddelanden med det i åtanke antics för GET är dock begränsade så att en kropp, om någon, inte har någon semantisk betydelse för begäran. Kraven på analysering är skilda från kraven på metodsemantik. Så ja, du kan skicka en kropp med GET, och nej, det är aldrig användbart att göra det. " Det faktiska svaret har mer information.
POST
begäran istället?