我正在开发一个移动应用程序,将使用 Phonegap 进行部署。
现在我可以使用 Drupal 7 服务登录,并且还可以获得 session 名称和 session ID。但我无法注销用户。当我这样做时..我在 Chrome 控制台上看到这个问题:406( Not Acceptable :)
我尝试以“Cookie”然后“sessionname=sessionid”格式发送 header ..但这不起作用。有人可以建议一种方法吗?
最佳答案
您需要从 YOUR_SITE/services/session/token
添加 CSRF token ,然后按照添加 Cookie
的相同方式将其添加到 header 中,诸如此类喜欢
'X-CSRF-Token: ' + $token
并确保它是PUT
,这里有一个很好的例子:
相关部分如下所示:
$.ajax({
url: "http://your_url/endpoint/user/logout.json",
type: 'post',
dataType: 'json',
beforeSend: function (request) {
request.setRequestHeader("X-CSRF-Token", token);
},
error: function (jqXHR, textStatus, errorThrown) {
alert('Failed to logout');
alert(JSON.stringify(jqXHR));
alert(JSON.stringify(textStatus));
alert(JSON.stringify(errorThrown));
},
success: function (data) {
alert("You have been logged out.");
}
});
关于service - 注销用户,服务无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18813516/