Le corps de la re­quête

L'Informaticien - - SOLUTIONS IT -

L’ob­jet NSURLCon­nec­tion dia­logue avec le ser­veur web via le pro­to­cole HTTP. Les don­nées à émettre et re­ce­voir doivent bien en­ten­du res­pec­ter la spé­ci­fi­ca­tion HTTP. La classe NSURLRe­quest pro­pose plu­sieurs mé­thodes per­met­tant de dé­si­gner une par­tie seule­ment de la re­quête et de la for­ma­ter en fonc­tion de vos be­soins. Rap­pe­lons qu’une re­quête de ser­vice com­porte tou­jours trois par­ties : - une ligne de re­quête ; - les en-têtes HTTP ; - le corps HTTP. Le corps, seul, est fa­cul­ta­tif. La ligne de re­quête ou ligne de sta­tut – se­lon la ter­mi­no­lo­gie Apple – est tou­jours la pre­mière ligne de la re­quête. C’est elle qui « dit » au ser­veur ce que veut – faire – le client. La com­mande de lec­ture GET est une mé­thode HTTP stan­dard. Ce n’est pas la seule dis­po­nible, mais c’est l’une des plus fré­quem­ment em­ployée avec POST. C’est aus­si celle qui est em­ployée par dé­faut par la classe NSURLRe­quest et qui spé­ci­fie que le client sou­haite ré­cu­pé­rer une in­for­ma­tion en pro­ve­nance du ser­veur. Cette in­for­ma­tion re­quise cor­res­pond à l’URI de re­quête URI-Re­quest. À l’ori­gine, cette URI de re­quête conte­nait le che­min d’ac­cès à un fi­chier se trou­vant sur le ser­veur et le na­vi­ga­teur du client en af­fi­chait son conte­nu. L’adresse URI de re­quête per­met dé­sor­mais d’in­di­quer un ser­vice pro­po­sé par le ser­veur. C’est presque le même prin­cipe qui est em­ployé, une lec­ture de type GET, mais le ser­veur va d’abord ap­pli­quer un trai­te­ment, ce en fonc­tion de ce que vous lui de­man­dez de ren­voyer. Il est éga­le­ment pos­sible de trans­mettre des in­for­ma­tions dans l’autre sens, vers le ser­veur, comme des pho­tos ou tous les autres types de do­cu­ments. L’ap­pli­ca­tion cliente doit alors trans­fé­rer les don­nées d’image au ser­veur via une re­quête de ser­vice. C’est la mé­thode HTTP POST qui se­ra alors uti­li­sée. Elle in­dique au ser­veur que vous al­lez lui four­nir le corps (fa­cul­ta­tif) HTTP. Le corps de la re­quête doit bien évi­dem­ment cor­res­pondre aux don­nées à trans­mettre, gé­né­ra­le­ment for­ma­tées, rap­pe­lons-le, en XML, JSON ou en­core Base-64. Si la re­quête pos­sède un corps, il faut aus­si qu’elle pos­sède un en-tête nom­mé Content-Length. NSURLRe­quest cal­cule au­to­ma­ti­que­ment la lon­gueur du corps de la re­quête et ajoute l’en-tête ap­pro­prié.

Newspapers in French

Newspapers from France

© PressReader. All rights reserved.