Autoriser l'accès interdomaine sur le serveur Rails

Kahsn

J'ai une application Web frontale dans Angular et back-end dans Rails. Depuis le front-end, j'ai un code javascript qui émet une requête POST http:

$scope.onSave = function () {
        $http.post('http://localhost:3000/documents', { user: $scope.user, formData: $scope.formData }, function (response) {
            $scope.isSaved = true;
            console.log(response);
            if (response.success) {
                console.log("It has been successfully saved!")
            }
        });
}

Et sur le bouton de soumission, j'appelle la fonction ci-dessus:

<button type="submit" class="btn btn-success" ng-click="onSave()">Submit</button>

Ensuite, je reçois une erreur disant

XMLHttpRequest ne peut pas charger http: // localhost: 3000 / documents . La réponse à la demande de contrôle en amont ne passe pas le contrôle d'accès: aucun en-tête «Access-Control-Allow-Origin» n'est présent sur la ressource demandée. L' accès à l' origine ' http: // localhost: 3001 ' n'est donc pas autorisé. La réponse avait le code d'état HTTP 404.

Je sais que je dois autoriser l'accès à plusieurs domaines, mais je ne sais pas comment je peux y parvenir côté serveur Rails.

Christopher Harris
  1. Ajoutez ceci gem "rack-cors" à votre Gemfile.

  2. Ajoutez ceci à votre fichier config / application.rb.

   config.middleware.insert_before 0, Rack::Cors do
        allow do
            origins '*'
            resource '*',
              headers: :any,
              methods: [:get, :post, :patch, :delete, :put, :options]
        end
    end

Cet article est collecté sur Internet, veuillez indiquer la source lors de la réimpression.

En cas d'infraction, veuillez [email protected] Supprimer.

modifier le
0

laisse moi dire quelques mots

0commentaires
connexionAprès avoir participé à la revue

Articles connexes

Refuser tout mais autoriser uniquement l'accès d'Angularjs sur le même serveur

Autoriser le serveur distant à accéder au serveur d'API sur l'hôte local

Autoriser le serveur GAE à accéder à l'instance Cloud SQL

Comment autoriser l'accès à toutes les demandes via le serveur proxy squid?

Empêcher l'accès aux vidéos, mais autoriser leur affichage sur le site ?

accès à la console Rails après le déploiement sur le serveur

Comment autoriser l'accès aux données sensibles uniquement depuis le serveur de ressources ? [OAuth OpenID]

autoriser l'accès à toutes les ressources sur le cluster kubernetes à l'exception des nœuds get

accorder l'accès à l'utilisateur sur le serveur amazon RDS

.htaccess bloque l'accès extérieur sur le serveur local à l'exception de certaines URL

Comment accorder l'accès à l'environnement virtuel à d'autres utilisateurs sur le serveur CentOS

comment enregistrer l'utilisateur obtenant l'accès au chemin refusé sur le serveur Windows

Limiter l'accès en écriture au fichier JSON sur le serveur AWS S3

Autoriser les utilisateurs à sélectionner un fichier de google drvie à télécharger sur mon serveur

Accès à l'appareil sur le réseau local via le webhook hébergé sur le serveur

Utilisation du rôle IAM pour autoriser l'accès à la base de données MySQL sur RDS

Comment puis-je refuser l'accès à example.com/phpmyadmin sur le serveur openlitespeed?

Postgresql CREATE GRANT - Limiter l'accès à d'autres bases de données sur le serveur ?

Flask : le serveur ne répond pas sur l'accès API interne

Échec de l'analyse de la DTD de tuiles sur le serveur sans accès Internet

Nginx renvoie 404 introuvable lors de l'accès au fichier sur le serveur

activation de l'accès à Subversion via le serveur Web Apache et DAV sur Ubuntu

Erreur "Message incorrect" lors de l'accès à un fichier sur le serveur Windows OpenSSH SFTP

Bloquer l'accès aux fichiers de mon application Web système sur le serveur

Comment accéder aux éléments stockés dans une liste sur le serveur (Shiny)

Configurer le pare-feu Google Cloud Compute pour autoriser l'accès externe au serveur de base de données

Accès Intel XDK Ajax non autorisé après le téléchargement sur le serveur [fonctionne bien dans xampp]

Autoriser l'accès aux objets créés sur un thread d'arrière-plan sur le thread d'interface utilisateur

Accès au serveur de jetée Java sur le port 9999 à l'aide de vagrant sur une machine locale

TOP liste

  1. 1

    Comment exécuter un fichier python avec des droits d'administrateur dans pycharm

  2. 2

    comment obtenir un objet de requête dans les tests unitaires de django?

  3. 3

    mongo kafka connect source

  4. 4

    Vérifier la longueur du nombre à partir du message, puis utiliser la valeur dans l'instruction

  5. 5

    comment convertir une chaîne en un tuple dateutil jour de la semaine sans utiliser eval

  6. 6

    Comment ajouter un texte dans un texte Python/Tkinter

  7. 7

    Aide de variable de débogage pprint jinja2

  8. 8

    Dans les modèles Hugo, comment vérifier la longueur du tableau de fichiers JSON?

  9. 9

    Impression de la longueur du chemin le plus court dans le labyrinthe

  10. 10

    Exécuter la requête externe pour chaque date obtenue à partir de la requête interne

  11. 11

    Recherche de dicton Jinja2 à l'aide d'une clé variable

  12. 12

    Algorithme: diviser de manière optimale une chaîne en 3 sous-chaînes

  13. 13

    Comment obtenir l'intégration contextuelle d'une phrase dans une phrase à l'aide de BERT ?

  14. 14

    définir une propriété pour chaque nœud dans neo4j

  15. 15

    Pourquoi cette requête Java échoue-t-elle? renvoyer 0 quand il y a des résultats

  16. 16

    Comment changer le navigateur par défaut en Microsoft Edge pour Jupyter Notebook sous Windows 10 ?

  17. 17

    Laravel 8: Attempt to read property "id" on null

  18. 18

    Comment obtenir tous les champs d'un objet (y compris sa superclasse), à l'aide de l'API Mirrors de Dart?

  19. 19

    Référencement des assemblys de structure .net 4.7 dans la solution .net core 2

  20. 20

    Microsoft.WebApplication.targets

  21. 21

    obtenir le nombre de marqueur affiché sur la carte

chaudétiquette

Archive