gpt4 book ai didi

javascript - 使用 JQuery 和 javascript 在 Ajax 调用后保存 cookie

转载 作者:行者123 更新时间:2023-11-29 15:47:40 25 4
gpt4 key购买 nike

使用相同的凭据,我试图从一个表单登录到两个不同的位置。这样做的原因是第二次登录(CRM 门户)可以加载到 iframe 中,而无需第二次登录。我认为最好的解决方案是使用 Ajax 调用来处理一次登录,然后在收到响应后,去处理第二次登录。我正在使用客户端进行这两个调用,因为我需要将 cookie 保存到客户端的浏览器中。我使用 Ajax 进行调用。我知道正在返回 cookie(我使用一个名为 Fiddler 的应用程序来查看事件)但我不知道如何获取这些 cookie 并将它们保存到客户端浏览器?

我使用的 Javascript/JQuery:

<script type="text/javascript">
$(document).ready(function() {
$(".login_btn").click(function() {
$.ajax({
type: "POST",
url: "http://development/crm/processlogin.php",
data:"username="+ "email@email.email" + "&password="+ "password" + "&rememberme="+ "on",
success: function(data, textStatus){
alert("success: "+ JSON.stringify(data));
},
error: function(data, textStatus){
alert("error: "+ JSON.stringify(data));
}
});
});
});
</script>

我得到的 Cookie 响应,使用“Fiddler”查看信息:

Response sent 44 bytes of Cookie data:
Set-Cookie: PHPSESSID=4a30p9g6mh5tm93a94o7bh7r74; path=/
Response sent 50 bytes of Cookie data:
Set-Cookie: WHMCSUID=75; expires=Thu, 07-Feb-2013 10:48:49 GMT
Response sent 79 bytes of Cookie data:
Set-Cookie: WHMCSPW=54512414f2e6aef246445abf341a05e9; expires=Thu, 07-Feb-2013 10:48:49 GMT

我从 firebug 控制台窗口得到的消息:

POST http://development/crm/processlogin.php 302 Moved Temporarily 5.04s

输出:

error: {"readyState":0,"responseText":"","status":0,"statusText":"error"}

我认为 302 错误消息是因为服务器在登录后尝试重定向。我实际上并不需要该重定向,但我确实需要将 cookie 保存到浏览器以便用户登录我希望你们能告诉我该怎么做?

谢谢!!!

最佳答案

我相信 cdm9002 说它不起作用的原因是不同的域是正确的。我在同一个域上测试了该功能并且它有效,但是,这不是我需要的功能。我想出了一个让它工作的黑客,但这不是正确的做事方式:(。如果有人知道正确的方法,我仍然很感兴趣,但我已经解决了我眼前的困境。

解决方案是先处理应用程序登录。然后将下一个登录凭据加载到下一页的隐藏 iframe 中。然后我使用 javascript 提交隐藏的表单。

我知道这是一种非常糟糕的做法,但我无法想出替代解决方案。

关于javascript - 使用 JQuery 和 javascript 在 Ajax 调用后保存 cookie,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9192121/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com