Impossible d'obtenir, # est le hachage frontal Lors de l'envoi d'une demande, le hachage après celle-ci ne sera pas envoyé à l'url. Je ne vous connais pas. Pourquoi y a-t-il #
const querystring = require('querystring');
let str = 'https://beta.biaoqing.com/callback/qq/#access_token=CF0C8D1CDFEE38425CDB8A719080A153&expires_in=7776000';
let r = querystring.parse(str);
console.log(r);
for(value in r){
console.log('key: ', value);
console.log('value: ', r[value]);
}
C’est considéré comme opportuniste. La méthode Object.values() dans es6 peut remplacer la méthode for in ci-dessus, mais elle n'est compatible qu'avec la version node v7.x.
Il s'agit d'une page de destination de secours autorisée par un tiers, n'est-ce pas ?
Le front-end de cette page de destination peut récupérer le contenu derrière le hachage, la logique peut donc être la suivante :
L'utilisateur passe de votre site Web à l'autorisation tierce-> L'autorisation tierce passe avec succès à la page de destination de rappel prédéfinie sur votre site Web-> Le hachage de la page de destination de rappel contient access_token et d'autres paramètres-> js est pris. Envoyez une requête asynchrone à l'interface définie dans le backend en utilisant les paramètres du hachage -> renvoie le succès, le contrôle js saute -> Le navigateur est dirigé vers la véritable page de réussite de l'autorisation interactive pour l'utilisateur
En d'autres termes, la page de destination renvoyée lors de la première étape est une page de transit. Le but est d'utiliser js pour supprimer le contenu haché et de le renvoyer au backend avec ajax une fois que le backend a obtenu le jeton autorisé par le tiers. , js contrôle immédiatement le changement. Il est préférable d'ajouter une interface utilisateur à cette page de transfert, comme une invite telle que sauter, ce qui est absolument acceptable en termes d'expérience utilisateur.
Impossible d'obtenir, # est le hachage frontal Lors de l'envoi d'une demande, le hachage après celle-ci ne sera pas envoyé à l'url. Je ne vous connais pas. Pourquoi y a-t-il #
à la fin ?vous apprend une méthode particulière :
C’est considéré comme opportuniste.
La méthode Object.values() dans es6 peut remplacer la méthode for in ci-dessus, mais elle n'est compatible qu'avec la version node v7.x.
------------------------Séparateur-------------------- - ---------
Améliorez la méthode ci-dessus : supprimez le symbole # et tout ira bien.
Il s'agit d'une page de destination de secours autorisée par un tiers, n'est-ce pas ?
Le front-end de cette page de destination peut récupérer le contenu derrière le hachage, la logique peut donc être la suivante :
L'utilisateur passe de votre site Web à l'autorisation tierce-> L'autorisation tierce passe avec succès à la page de destination de rappel prédéfinie sur votre site Web-> Le hachage de la page de destination de rappel contient access_token et d'autres paramètres-> js est pris. Envoyez une requête asynchrone à l'interface définie dans le backend en utilisant les paramètres du hachage -> renvoie le succès, le contrôle js saute -> Le navigateur est dirigé vers la véritable page de réussite de l'autorisation interactive pour l'utilisateur
En d'autres termes, la page de destination renvoyée lors de la première étape est une page de transit. Le but est d'utiliser js pour supprimer le contenu haché et de le renvoyer au backend avec ajax une fois que le backend a obtenu le jeton autorisé par le tiers. , js contrôle immédiatement le changement. Il est préférable d'ajouter une interface utilisateur à cette page de transfert, comme une invite telle que sauter, ce qui est absolument acceptable en termes d'expérience utilisateur.