2009-08-13 6 views
2

Existe-t-il un moyen d'utiliser un chemin de serveur complet au lieu d'une URL lors de l'envoi d'un formulaire via ajax avec jquery?jquery ajax & chemin du serveur complet

L'exemple ci-dessous ne fonctionne pas mais il vous donnera une idée de ce que j'essaie de faire. Je sais que vous ne pouvez pas faire de requêtes ajax interdomaines, mais tout cela est sur le même serveur physique.

Je ne veux pas configurer de proxy ou quoi que ce soit d'autre, s'il n'y a pas moyen de le faire facilement, je vais juste déplacer quelques fichiers sur le serveur mais j'espérais qu'il y aurait une solution facile.

$.ajax({ 
     type: "POST", 
     url: "/home/full/server/path/file.php", 
     data: theData, 
     success: function() { 
     $('div#success').fadeIn('fast'); 
     } 
    }); 

Merci!

Répondre

4

Non, cela ne fonctionnera pas. Ce ne sont pas des URI visibles publiquement, ce sont des chemins de script réels qui ne sont pas visibles depuis le client.

+0

Merci pour la réponse rapide. – Enkay

3

Les serveurs Web ne fonctionnent pas de cette façon. Il y a des raisons de sécurité évidentes. Vous pouvez cependant utiliser un chemin relatif.

10

Est-il possible d'utiliser un chemin serveur complet au lieu d'une URL lors de la présentation un formulaire via ajax jquery avec?

Vous pouvez utiliser emplacement pour obtenir le serveur actuel :

url: location.protocol + "//" + location.host + "/home/full/server/path/file.php" 

Mais vous cannot use absolute path for cross-domain demandes.

+1

Est-ce que cela fonctionne réellement? – karim79

+1

Oui, mais pas pour les demandes inter-sites :) En fait, cela ne diffère pas de l'utilisation du chemin relatif. Il utilise juste le chemin absolu. Parfois peut être utile si vous ne savez pas à quel script de page sera exécuté (donc vous ne pouvez pas utiliser le chemin relatif), –

Questions connexes