Parse platform 为什么可以';在“用户”上设置对象吗?--解析Javascript SDK

Parse platform 为什么可以';在“用户”上设置对象吗?--解析Javascript SDK,parse-platform,Parse Platform,这是我的密码: var user = Parse.User.current(); if (user.isCurrent()) { console.log("exports.saveLevel -- isCurrent"); }; if (user.authenticated()) { console.log("exports.saveLevel -- authenticated"); }; var language = req.body.langua

这是我的密码:

  var user = Parse.User.current();

  if (user.isCurrent()) {
    console.log("exports.saveLevel -- isCurrent");
  };


 if (user.authenticated()) {
    console.log("exports.saveLevel -- authenticated");
  };

  var language = req.body.language;
  var level = req.body.level;
  var key = "level_" + language.code;

  console.log("exports.saveLevel -- language.code = " + language.code);
  console.log("exports.saveLevel -- level = " + level);

  // Save the level
  user.set(key, level);

  user.save().then(
    function(obj) {
      console.log("exports.saveLevel -- saved -- obj = " + obj);
      res.send({status: 200});
    },
    function(error) {
      console.log("exports.saveLevel -- error = " + error);
      res.send({status: 500});
    }
  );    
这是日志。我知道我的所有对象都在那里,并且用户已通过身份验证:

19:16:19 web.1  | exports.saveLevel -- isCurrent
19:16:19 web.1  | exports.saveLevel -- authenticated
19:16:19 web.1  | exports.saveLevel -- langauge = [object Object]
19:16:19 web.1  | exports.saveLevel -- langauge.code = fr
19:16:19 web.1  | exports.saveLevel -- level = [object Object]
19:16:19 web.1  | exports.saveLevel -- level.name = Child
19:16:19 web.1  | POST /saveLevel 500 44ms - 59b
但是我得到一个
500状态码
,没有其他错误信息


这是控制台的日志。日志(级别):

console.log(语言)


您必须使用
Parse.Cloud.useMasterKey()
您可以阅读有关它的更多信息

console.log(级别);console.log(语言);它们应该是什么类型?
级别
语言
都是对象。所以我选择了
language.code
并将其作为键的一部分,而
level
是该键指向的对象。什么类型的对象?您能否共享console.log(级别)和console.log(语言)?
exports.saveLevel--level=[object object]
。。。它们是我在服务器端检索到的解析对象。然后我把它们交给了客户。。。当用户选择一个级别时,我将在AJAX帖子中将该
级别
对象传递回服务器以保存。。。问题是这个对象不再是解析对象,而只是一个普通的JS对象吗?对不起<代码>控制台.log(级别)记录到
[对象对象]
10:01:08 web.1  | { level: '1',
10:01:08 web.1  |   name: 'Child',
10:01:08 web.1  |   name_en: 'Child',
10:01:08 web.1  |   ACL: 
10:01:08 web.1  |    { '*': { read: 'true' },
10:01:08 web.1  |      'role:Administrators': { write: 'true' },
10:01:08 web.1  |      giLkokRpuK: { write: 'true', read: 'true' } },
10:01:08 web.1  |   objectId: 'b9KaEwoWOV',
10:01:08 web.1  |   createdAt: '2014-04-17T17:41:25.401Z',
10:01:08 web.1  |   updatedAt: '2014-04-23T23:03:43.964Z' }
10:01:08 web.1  | { code: 'fr',
10:01:08 web.1  |   isSetup: 'true',
10:01:08 web.1  |   name: 'French',
10:01:08 web.1  |   nativeSpelling: 'français',
10:01:08 web.1  |   order: '130',
10:01:08 web.1  |   languageObjectsNative: 
10:01:08 web.1  |    [ { __type: 'Pointer',
10:01:08 web.1  |        className: 'Language',
10:01:08 web.1  |        objectId: 'GQPAHePPl3' } ],
10:01:08 web.1  |   users: { __type: 'Relation', className: '_User' },
10:01:08 web.1  |   usersNative: { __type: 'Relation', className: '_User' },
10:01:08 web.1  |   objectId: 'GQPAHePPl3',
10:01:08 web.1  |   createdAt: '2013-11-15T22:11:16.368Z',
10:01:08 web.1  |   updatedAt: '2014-07-06T03:00:29.380Z' }