Envoyer un objet au fichier javascript distant
-
06-07-2019 - |
Question
Donc, si je mets en place un badge yahoo pipes sur mon site, yahoo me donne ce code
<script src="http://pipes.yahoo.com/js/listbadge.js">{"pipe_id":"USER_ID","_btype":"list"}</script>
Notez qu'il transmet un littéral d'objet au script distant. je voudrais faire quelque chose de similaire avec mes propres scripts, comment interagissez-vous avec cette entrée?
La solution
Vous ne pouvez pas réellement transmettre des variables comme ça de manière native . Dans son fichier listbadge.js, Yahoo cherche dans toutes les <script>
balises de la page jusqu'à trouver celle qui l'a incluse, puis analyse le innerHTML au format JSON.
Leur source a été légèrement obscurcie, mais voici ma meilleure compréhension.
var scripts = document.getElementsByTagName("SCRIPT");
for (var i = 0; i < scripts.length; i++) {
var includeString = scripts[i].src;
if (includeString.match("listbadge.js")) {
if (scripts[i].innerHTML){
var passedVariables = parseJson(scripts[i].innerHTML);
}
break;
}
}
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow