Jeg vedlikeholder en gammel .aspx
-side der alle dataene som kreves av siden for å vise at innholdet sendes i URL-en til GET
forespørselen som en del av spørringsstrengen. Resultatet av dette er at, mens vi fortsetter å legge til funksjoner, blir URL-en stadig større.
Jeg tenker på å flytte alle parametrene fra spørringsstrengen til kroppen til GET
-forespørselen.
Er det en god designbeslutning, og hva er bruken av en kropp i GET
forespørsel?
Kommentarer
Svar
GET-forespørsler med en kropp støttes i HTML-spesifikasjonene.
Se Stack Overflow-spørsmålet Er dette utsagnet riktig? HTTP GET-metoden har alltid ingen tekstmeldinger for en diskusjon.
Det er imidlertid uvanlig. Du vil overraske folk med den løsningen. Det er bare å bytte til en POST.
Den eneste ulempen (oppad?) er irriterende RESTfulness-acolytter.
Kommentarer
- det er tekniske ulemper siden mange javascript-biblioteker ikke ' t støtter GET med en kropp. For databaser der du utfører et søk, er det logisk å gjøre det på den måten, men du ville ikke ' t være i stand til å ringe fra en enkelt side-app til ElasticSearch eller SOLR-forekomsten (de eneste API-ene der jeg så denne kombinasjonen implementert).
- Dette spørsmålet sier det samme: stackoverflow.com/questions/978061/http-get-with-request-body " Ja. Med andre ord, enhver HTTP-forespørsel meldingen får inneholde en meldingstekst, og må dermed analysere meldinger med tanke på det antics for GET er imidlertid begrenset slik at et legeme, hvis noen, ikke har noen semantisk betydning for forespørselen. Kravene til parsing er atskilt fra kravene til metodesemantikk. Så ja, du kan sende en kropp med GET, og nei, det er aldri nyttig å gjøre det. " Det faktiske svaret har flere detaljer.
POST
forespørsel i stedet?