web-dev-qa-db-fra.com

Puis-je faire un POST entre domaines non hostile maintenant?

Une exigence pour un site, je travaille sur les appels pour que les visiteurs puissent s'inscrire pour une liste de courrier électronique. Plutôt que d'ajouter une gestion côté serveur pour ce site par ailleurs statique, j'aimerais POST du formulaire d'inscription par courrier électronique vers un autre serveur (appartenant au même client) disposant déjà d'un gestionnaire d'inscription par courrier électronique.

Mais ce serveur est sur un domaine différent, je m'attends donc à une certaine résistance des protections UA CSRF, mais je ne sais pas exactement à quoi s'attendre. (Il n'y a pratiquement aucun JS impliqué dans ce processus, juste un post-cross entre sites.)

  1. Est-ce que ce que je veux faire est possible ou dois-je iframe le formulaire d'inscription du courrier électronique du serveur n ° 2?
  2. Si possible, à quels types de problèmes puis-je m'attendre et comment les résoudre?
2
kojiro

Je viens d'essayer ça, et oui, ça marche complètement:

http://www.alphasmanifesto.com/tests/testPostSender.php (La page de test n'est plus active.)

Code source pour l'expéditeur:

<html>
    <body>
        <form method="POST" action="http://www.automatumvitae.com/testPostReceiver.php">
            <input type="text" name="text" />
            <input type="submit" />
        </form>
    </body>
</body>

Code source pour le destinataire:

<html>
    <body>
        <p><?php
            if (isset($_POST['text'])) {
                $text = $_POST['text'];
                echo "Succeded! Submitted value: $text";
            } else {
                echo "Didn't receive anything. :(";
            }
        ?></p>
    </body>
</body>

En passant, ceci a été essayé sur deux domaines différents sous le même serveur. Il s’agit d’une publication interdomaine, mais toutes deux indiquent la même adresse IP. (Je ne pense cependant pas que cela affecte quoi que ce soit.)

J'ai essayé ceci sur FF et Chrome et je n'ai trouvé aucun problème.

2
Alpha