Une fois l'emballage terminé, le navigateur ouvre le lien : http://localhost:3000/#/register
Lorsque la fonction d'inscription est terminée, il y a des demandes de publication, telles que la soumission des informations d'inscription, et des demandes d'obtention , comme vérifier les numéros de téléphone portable. A-t-il été enregistré ?
Le problème que je rencontre maintenant est que les requêtes get peuvent être utilisées normalement, mais les requêtes post ne peuvent pas être utilisées normalement.
Comme indiqué ci-dessous, la demande d'obtention est normale et le résultat attendu est obtenu.
Comme suit, la demande de publication est anormale. Il s'agissait à l'origine d'une demande de publication, mais elle est devenue Request Method:OPTIONS lors du proxy, puis une erreur s'est produite.
Ci-joint les configurations liées au proxy :
var browserSync = require('browser-sync').create();
var proxyMiddleware = require('http-proxy-middleware');
gulp.task('server', ['build'], function() {
var middleware = proxyMiddleware('/d', {target: 'http://api.b.cn', changeOrigin: true});
browserSync.init({
server: {
baseDir:dist,
index: 'index.html',
middleware: middleware
}
});
});
Merci pour l'invitation !
La norme de partage de ressources d'origine croisée ajoute un nouvel ensemble de champs d'en-tête HTTP qui permettent au serveur de déclarer quels sites d'origine sont autorisés à accéder à quelles ressources. De plus, la spécification exige que pour les méthodes de requête HTTP qui peuvent avoir des effets secondaires sur les données du serveur (en particulier les requêtes HTTP autres que GET ou les requêtes POST avec certains types MIME), le navigateur doit d'abord utiliser la méthode OPTIONS pour lancer une requête de contrôle en amont. (requête de contrôle en amont) pour savoir si le serveur autorise la requête inter-domaines. Une fois que le serveur a confirmé l'autorisation, il lance la requête HTTP proprement dite. Lors du retour de la demande de contrôle en amont, le serveur peut également indiquer au client s'il doit transporter des informations d'identification (y compris les cookies et les données liées à l'authentification HTTP).
Il est recommandé de lire en détail l'article suivant :
Contrôle d'accès HTTP
Pour résoudre le problème, il existe deux manières :
Ajouter un en-tête de requête inter-domaines CORS
Si vous n'en avez besoin que pour le développement, vous pouvez utiliser Fiddler pour définir l'en-tête de requête inter-domaines CORS. J'ai récemment trouvé un artefact Chrome - CORS Toggle, ce qui est très pratique.
Ressources de référence
Solution CORS
Problème inter-domaines, solution - Solution CORS
Partage de ressources d'origine croisée (CORS) que vous ne connaissez pas
L'avez-vous résolu ? J'ai rencontré le même problème