如何通过Parse REST API从_User中删除用户

时间:2015-06-08 21:19:18

标签: javascript angularjs login parse-platform

我试图从parse.com的_User表中删除一个用户,但是我收到了错误。

我确定请求的语法没问题,我收到了这个错误:

code: 206
error: "Parse::UserCannotBeAlteredWithoutSessionError"

我认为我不应该登录来删除用户,因为我是在API REST上做的。

$scope.delete = function (id) {
  $http({
     method: "DELETE",
     url: url_users + id,
     headers: {'X-Parse-Application-Id': appId,
               'X-Parse-REST-API-Key': restId}

  }).success(function (data) {
     debugger;
     swal("Deleted!", "All user data has been deleted", "success");
  }).error(function (data) {
    debugger;
     swal("Error!", "An unexpected error ocurred, try again!", "error");
  });
}

2 个答案:

答案 0 :(得分:1)

您正尝试从其他用户会话中删除用户以进行删除。即使您在标头中使用X-Parse-REST-API-Key,这也无法在REST API中运行。解决方案是使用Clode Code Function从另一个会话中删除或更新用户。

有关详细信息,请参阅文档Parse Cloud Code Guide

以下响应是删除用户的Code Clode功能:

Parse User Destroy - Javascript in Cloud Code

答案 1 :(得分:0)

我还没有尝试过这样做,但我有这些想法:

  • 确保您的ACL允许公开
  • 调用云代码功能是不可接受的?在这种情况下,这比使用API​​更直观。你能解释为什么必须使用REST API吗?
  • 如果这不起作用,请查看以下答案:https://www.parse.com/questions/delete-a-user-rest-api

基本上,您可能必须传递Master Key标头,这不太适合向公众公开。是不接受