0001-doc-update-api-datasource-page-33337.patch
help/fr/api-datasource.page | ||
---|---|---|
49 | 49 | |
50 | 50 |
<p> |
51 | 51 |
Quand il y a besoin de filtrer dynamiquement les données |
52 |
(autocomplétion, recherche dans un champ liste), |
|
53 |
le protocole <link href="http://en.wikipedia.org/wiki/JSONP">JSONP</link> |
|
54 |
est utilisé. Les exigences supplémentaires sont les suivantes : |
|
52 |
(autocomplétion, recherche dans un champ liste), l'adresse appellée |
|
53 |
doit respecter les exigences supplémentaires suivantes : |
|
55 | 54 |
</p> |
56 | 55 | |
57 | 56 |
<list> |
58 |
<item><p>accepter un paramètre <code>callback</code> permettant de définir
|
|
59 |
le nom de la fonction Javascript devant être appelée ;</p></item>
|
|
60 |
<item><p>accepter un paramètre <code>q</code> permettant de filtrer les
|
|
61 |
résultats.</p></item>
|
|
57 |
<item><p>accepter un paramètre, usuellement <code>id</code>,
|
|
58 |
permettant de retourner un seul élément en le désignant par son identifiant ;</p></item>
|
|
59 |
<item><p>accepter un paramètre, usuellement <code>q</code>,
|
|
60 |
permettant de filtrer les éléments en fonction de leur contenu.</p></item>
|
|
62 | 61 |
</list> |
63 | 62 | |
64 | 63 |
<example> |
65 |
<title>Exemple JSONP</title>
|
|
64 |
<title>Exemple JSON d'un élément unique désigné par son identifiant</title>
|
|
66 | 65 |
<screen> |
67 |
<output style="prompt">$ </output><input>curl https://www.example.net/data/fruits?q=po&callback=cb</input>
|
|
66 |
<output style="prompt">$ </output><input>curl https://www.example.net/data/fruits?id=1</input>
|
|
68 | 67 |
<output>cb({ |
69 | 68 |
"data": [ |
70 | 69 |
{ |
71 | 70 |
"text": "Poire", |
72 | 71 |
"id": "1" |
73 |
}, |
|
72 |
} |
|
73 |
] |
|
74 |
});</output></screen> |
|
75 |
</example> |
|
76 | ||
77 |
<example> |
|
78 |
<title>Exemple JSON filtré par contenu</title> |
|
79 |
<screen> |
|
80 |
<output style="prompt">$ </output><input>curl https://www.example.net/data/fruits?q=pom</input> |
|
81 |
<output>cb({ |
|
82 |
"data": [ |
|
74 | 83 |
{ |
75 | 84 |
"text": "Pomme", |
76 | 85 |
"id": "2" |
... | ... | |
86 | 95 |
de contexte du formulaire. |
87 | 96 |
</p></note> |
88 | 97 | |
98 |
<title>Exemple JSON enrichi</title> |
|
99 |
<screen> |
|
100 |
<output style="prompt">$ </output><input>curl https://www.example.net/data/fruits</input> |
|
101 |
<output>{ |
|
102 |
"data": [ |
|
103 |
{ |
|
104 |
"text": "Poire", |
|
105 |
"id": "1", |
|
106 |
"saison": "automne", |
|
107 |
"prix": "1" |
|
108 |
}, |
|
109 |
{ |
|
110 |
"text": "Pomme", |
|
111 |
"id": "2", |
|
112 |
"saison": "automne", |
|
113 |
"prix": "2" |
|
114 |
} |
|
115 |
] |
|
116 |
}</output></screen> |
|
117 |
</example> |
|
118 | ||
89 | 119 |
</page> |
90 |
- |