2017-08-17 1 views
0

Quand j'ouvre "http://aip.scitation.org/toc/apl/current", le site Web d'un journal appelé lettres de physique appliquée, il y a beaucoup de champs AJAX sur cette page. Chaque fois que je clique sur "show abstract", le résumé de l'article correspondant apparaîtra. Je sais qu'en utilisant "inspecter les éléments" ` -" réseau ", filtrer par XHR, je peux obtenir l'entête de la requête quand je clique sur" montrer le résumé "pourquoi les en-têtes de requête sont exactement les mêmes, mais le contenu Ajax différent peut être reçu?

La question est quand je clique sur différents" show abstract "sur cette page , chaque fois que les en-têtes de la requête, les cookies sont exactement les mêmes. Si les en-têtes de la requête sont toujours les mêmes, comment le serveur peut-il savoir quel contenu abstrait il doit livrer au navigateur? Ensuite, j'ai cherché la différence, la seule différence est que la capture d'écran montre, l'onglet "params" contient des informations différentes. Mais l'information dans "params" n'a pas été livrée au serveur, non? Je ne suis pas sûr à ce sujet. Je suis en train de concevoir un robot d'indexation Web utilisant python3 et, d'après ce que je sais, j'utilise urllib.request pour envoyer des en-têtes au serveur de site Web. Est-ce que certains peuvent me dire comment est la logique derrière cela? Merci beaucoup.

Répondre

0

Ok, voici comment l'application va se comporter. Pour Ajax ou que ce soit n'importe quelle requête, vous pouvez voir les paramètres passés dans params/formbody ou dans la chaîne de requête. C'est là que l'entrée est transmise au serveur en fonction de ces entrées, le serveur répondra au client.

En général, les en-têtes/cookies stockent les données au niveau de l'application comme les jetons, le contenu lié à l'authentification, etc. Dans la page que vous avez mentionnée, vous devriez également travailler de la même manière.

Si vous avez besoin d'un exemple de code, référez-vous à http://api.jquery.com/jquery.ajax/ si vous notez une propriété appelée "données" qui est utilisée pour envoyer une entrée et non des en-têtes. Généralement, les en-têtes sont des paires de valeurs clés qui ont un type de contenu, une longueur, etc.

Le lien jquery ajax et les exemples devraient vous aider à démarrer