Dans le but de créer des requêtes GET avec des paramètres de requête personnalisés à l'aide de l'API Fetch, une question pertinente se pose : "Comment puis-je ajouter chaînes de requête à mes requêtes ?" Originaire du besoin impératif d'adapter les requêtes GET telles que « http://myapi.com/orders?order_id=1 », la requête demeure : existe-t-il un équivalent au paramètre de données {order_id : 1} de jQuery dans Fetch ?
Libérant le potentiel d'URLSearchParams, une solution contemporaine émerge. En utilisant sa méthode toString(), on peut facilement transformer l'instance en une chaîne de requête codée, en l'ajoutant de manière transparente à l'URL de la requête :
<code class="javascript">fetch('https://example.com?' + new URLSearchParams({ foo: 'value', bar: 2, }).toString())</code>
URLSearchParams convertit méticuleusement l'objet dans le format de chaîne de requête souhaité, éliminant ainsi le nécessité d'un encodage manuel. Alternativement, on peut omettre l'appel toString(), tirant parti de la conversion automatique de JavaScript lors de la concaténation de chaînes. Cependant, cette approche nécessite une compréhension plus approfondie du fonctionnement interne de JavaScript.
Pour une illustration complète, considérons l'exemple suivant, qui effectue une requête de récupération avec des paramètres de requête personnalisés :
<code class="javascript">async function doAsyncTask() { const url = ( 'https://jsonplaceholder.typicode.com/comments?' + new URLSearchParams({ postId: 1 }).toString() ); const result = await fetch(url) .then(response => response.json()); console.log('Fetched from: ' + url); console.log(result); } doAsyncTask();</code>
Avec ces techniques à votre disposition, vous possédez désormais la possibilité d'ajouter sans effort des chaînes de requête à vos requêtes GET à l'aide de l'API Fetch, vous permettant ainsi de façonner votre récupération de données. opérations avec précision et efficacité.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!