使用JQuery和javascript在Ajax调用后保存cookie
Saving down a cookie after an Ajax call using JQuery and javascript
使用相同的凭据,我试图从一个表单登录到两个不同的位置。原因是第二次登录(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提交隐藏的表单。
我知道这是一种非常糟糕的方式,但我无法想出另一种解决方案。
相关文章:
- JQuery Deferred Ajax,将结果保存在调用对象中
- 如何在视图中保存用户输入内容,并在离开页面时对控制器进行后期调用
- 提示用户通过AJAX调用保存文件
- 如何调用javascript函数以及将表单数据保存到html页面中的文本文件中
- 如何通过内容类型为“image/jpeg”的 AJAX 调用将画布图像从 GUI 保存到后端
- Cookie 在 Spotify (Javascript) 中调用 ajax 后未保存
- mongoose findOne()调用未保存,输出中没有错误
- 如何在循环中调用Promise函数并保存其返回值
- 是否可以调用Google API获取地图图像并将图像保存在某个位置
- 调用REST Service save()方法时,XPages Dojo Grid可编辑单元格不保存值
- 在 iframe 中调用保存铯映射的方法
- 调用保存到附加了事件处理程序的变量的函数
- 同步代码框 - 调用 API - 解析 JSON - 获取引用 - 保存新对象
- 解析云代码:如何调用异步保存的承诺
- 角度将变量保存到带有 ajax 调用的 laravel 会话不起作用
- 如何将调用传递回角度资源保存方法
- 并发之前保存允许重复的调用
- 无法正确调用保存对象
- 如何调用保存在单独文件中的javascript ?
- Jquery:如何发送一个ajax请求并为另一个调用保存JSON字符串