Spotify(Javascript)中的ajax调用后未保存Cookie?
我正在开发一个Spotify应用程序,我还尝试使用JQuery的$.ajax函数登录Reddit。登录正常,我可以在开发工具中看到响应cookie,但当我尝试访问Reddit API中要求随调用一起发送登录cookie的任何部分时,它失败了,看起来cookie从未被发送。此外,查看开发工具中的“Cookies”部分可以发现该站点(应用程序)没有Cookies 以下是登录呼叫:Spotify(Javascript)中的ajax调用后未保存Cookie?,javascript,jquery,ajax,spotify,Javascript,Jquery,Ajax,Spotify,我正在开发一个Spotify应用程序,我还尝试使用JQuery的$.ajax函数登录Reddit。登录正常,我可以在开发工具中看到响应cookie,但当我尝试访问Reddit API中要求随调用一起发送登录cookie的任何部分时,它失败了,看起来cookie从未被发送。此外,查看开发工具中的“Cookies”部分可以发现该站点(应用程序)没有Cookies 以下是登录呼叫: $.ajax({ type: 'POST', url: 'http://www.reddit.com/a
$.ajax({
type: 'POST',
url: 'http://www.reddit.com/api/login',
data: {
'user': $user,
'passwd': $password
},
success: function() {
alert("logged in!");
}
});
$.ajax({
type: 'POST',
url: 'http://www.reddit.com/api/login',
data: {
'user': $user,
'passwd': $password
},
xhrFields: {
withCredentials: true
},
success: function() {
alert("logged in!");
}
});
下面是投票调用(userhash复制自我在dev工具中看到的cookie):
使用jQuery 1.5.1中添加的xhrFields属性可能有助于: 登录呼叫:
$.ajax({
type: 'POST',
url: 'http://www.reddit.com/api/login',
data: {
'user': $user,
'passwd': $password
},
success: function() {
alert("logged in!");
}
});
$.ajax({
type: 'POST',
url: 'http://www.reddit.com/api/login',
data: {
'user': $user,
'passwd': $password
},
xhrFields: {
withCredentials: true
},
success: function() {
alert("logged in!");
}
});
电话投票:
$.ajax({
type: 'POST',
url: 'http://www.reddit.com/api/vote',
data: {
'id': $id,
'dir': 1,
'uh': $userhash
},
xhrFields: {
withCredentials: true
},
success: function(data) {
console.log(data);
}
});
这将告诉它将XMLHTTPRequest对象的withCredentials属性设置为true,这是在使用跨域AJAX调用时传递Cookie所必需的。我尝试过,但它似乎根本没有改变行为。关于电话的其他内容我还需要更改吗?