Problème de passage de paramètres via Iframe dans IE
Je suis en train d'exécuter un HTTP GET à partir de mon site web à un autre site web qui est apporté via iframe.
Sur Firefox, vous pouvez le voir dans la source que la bonne url de l'iframe src ainsi que de corriger les paramètres-- et il fonctionne.
Sur IE, vous pouvez le voir dans la source que la bonne url de l'iframe src ainsi que de corriger les paramètres-- et ça ne fonctionne pas...
Est-il quelque chose à propos de IE qui ne vous permet pas de passer des paramètres via un iframe dans la chaîne de requête?
J'ai essayé de l'actualisation de l'iframe dans IE, j'ai essayé de rafraîchir mes page & l'iframe dans IE, et j'ai essayé de copier l'url et de re-coller dans l'iframe src (en les forçant à s'actualiser comme si je viens de m'inscrire dans la barre d'adresse pour que la fenêtre iframe). Toujours pas de chance!
Ce que quelqu'un sait pourquoi ce qui se passe, ou avez des suggestions pour essayer de contourner ce problème?
Edit: je ne peux pas donner un lien car le site nécessite un mot de passe et vos identifiants de connexion à notre site et notre site du fournisseur. Même si j'ai pu faire un compte de test sur notre site, il n'est pas bon pour le processus de test parce que je ne peux pas faire de même pour le site du fournisseur. Comme pour le code, tout ce qu'il fait c'est de la création de la src depuis le backend code au chargement de la page et en définissant l'attribut src de l'extrémité arrière...
//Backend code to set src
mainIframe.Attributes["src"] = srcWeJustCreated;
//Front end iframe code
<iframe id="mainIframe" runat="server" />
Edit: Problème n'a jamais été résolu. Réponse automatique accepté parce que le bounty expiré. Je vais re-poser cette question avec plus d'informations et un lien vers la page lors de notre site est de se rapprocher d'aller vivre.
Merci,
Matt
Il fonctionne, c'est juste avec l'iframe que cela ne fonctionne pas.
Il existe un lien vers la page que nous pouvons utiliser pour enquêter sur?
Il serait utile de voir le code en question.
J'ai passé un HTTP GET de l'URL dans une iframe sur IE sans aucun problème. Il pourrait être une fonctionnalité de sécurité de le faire avec un autre domaine.
OriginalL'auteur Matt | 2009-07-23
Vous devez vous connecter pour publier un commentaire.
Par les paramètres de sécurité par défaut dans internet explorer, les paramètres de la requête sont bloqués dans des Iframes. Sur l'onglet sécurité dans les options internet de définir le niveau de sécurité faible. Si cela résout votre problème, alors vous savez que c'est votre problème. Si le site est pour les clients externes, puis attendre leur tour leurs paramètres de sécurité est probablement pas raisonnable, de sorte que vous peut-être trouver un travail autour de.
Le site vous avez de la difficulté à travailler lorsque vous définissez c'est à dire de bas de sécurité?
non, j'ai essayé de changer tous les paramètres et aucun d'entre eux travaillaient...
Quelqu'un sait - versions d'IE ce problème affecte?
OriginalL'auteur MikeW
Disons que votre site est http://www.acme.com et la source de l'iframe est à http://www.myvendor.com.
IIRC, la plupart au niveau du domaine des paramètres de sécurité ne se soucient pas le nom d'hôte, il faut donc ajouter un DNS CNAME pour votre fichier de zone pour myvendor.acme.com, a fait retour à http://www.myvendor.com. Puis, dans votre IFRAME, définissez la source à l'aide de votre nom d'hôte de l'alias.
Une autre solution pourrait être d'avoir votre Javascript pour définir la src redirecteur script sur votre propre serveur (et, donc, au sein de votre domaine). Votre script serait alors simplement rediriger l'IFRAME à la "corriger" l'URL avec les mêmes paramètres.
OriginalL'auteur richardtallent
Si elle vous convient, vous pouvez communiquer entre les sites avec des identificateurs de fragment. Vous pouvez trouver un article ici: http://tagneto.blogspot.com/2006/06/cross-domain-frame-communication-with.html
OriginalL'auteur Emre Erkan
Ce BYK dit. Je pense que ce qui se passe est que vous obtenez une URL qui est trop grand pour IE à manipuler. J'ai remarqué que vous essayez d'envoyer la variable nom de src, ce qui est probablement très longue, plus de 4k. J'ai rencontré ce problème avant, et c'était mon code. Notez le commentaire sur IE. Notez également qu'il provoque des problèmes avec Firefox, ce qui n'est abordée dans un autre commentaire.
OriginalL'auteur Chloe
Basé sur la réponse de Mike, la solution la plus simple dans ton cas serait d'utiliser le paramètre "cacher" pour convertir tous les paramètres dans une URL unique.
La plupart de manière évolutive à chaque "dossier" dans l'URL est constitué de l'paramètre, puis une virgule, puis la valeur. Par exemple, vous utilisez ces Url dans votre application:
Qui serait l'équivalent de ces:
C'est assez facile sur Apache .htaccess, mais il semblerait que vous utilisez IIS, donc je vais le laisser à vous de la recherche le exacte de mise en œuvre.
EDIT: viens de me remettre à ce et se rendit compte qu'il ne serait pas possible pour vous de mettre en œuvre le dessus sur un autre domaine si vous ne possédez pas :p Cependant, vous pouvez le faire côté serveur comme ceci:
De sorte que votre iframe URL serait:
Et que la page serait de lire et d'afficher l'URL:
OriginalL'auteur DisgruntledGoat
Essayez d'utiliser une méthode indirecte. Créer un FORMULAIRE. Définir son action en paramètre de l'url de base que vous souhaitez parcourir. Définir sa méthode POST. Définir sa cible de votre iframe et ensuite créer les paramètres nécessaires comme caché entrées. Enfin, de soumettre le formulaire. Il devrait fonctionner comme il fonctionne avec la POSTE.
Heh, pas de problème. Votre réponse a été source de confusion. Vous avez dit d'utiliser un formulaire avec
method="get"
mais qui va utiliser les paramètres GET qui l'OP cherche à éviter. Même si vous utilisezmethod="post"
il ne va pas fonctionner correctement car vous avez besoin de boutons pour la navigation. Et l'utilisateur devra cliquer sur un bouton au moins une fois à la charge de l'iframe.Tout d'abord merci beaucoup pour le GET/POST confusion avertissement =) Et pour votre "bouton" objection, je serais heureux de vous rappeler que CHAQUE formulaire peut être soumis par l'intermédiaire du JS 😉
OriginalL'auteur BYK