解析JS SDK:无法使用万能钥匙,尚未提供

kem*_*sbe 1 javascript parse-platform angular

我需要在我的angular2应用程序中使用masterKey,但我不能将其传递给initialize函数,我不能谷歌为什么.来自package.json:"parse": "~1.9.2".

初始化:

import {Parse} from '~/node_modules/parse/dist/parse';

@Injectable()
export class TFCloudService {
    constructor() {
        this.parse = Parse;

        Parse.initialize(appConfig.parse.appId, null, appConfig.parse.masterKey);
        Parse.serverURL = appConfig.parse.clientServerUrl;
        Parse.liveQueryServerURL = appConfig.parse.liveQueryServerURL;
    }
}
Run Code Online (Sandbox Code Playgroud)

错误来源:

this.edittedUser.save(null, {useMasterKey: true})
.then((user) => {
    console.log(user);
});
Run Code Online (Sandbox Code Playgroud)

错误文字: Error: Cannot use the Master Key, it has not been provided.

appConfig.parse.masterKey 工作正常,我也检查了硬编码键的行,但得到了相同的结果.

kem*_*sbe 9

实际上猜对了传递那把钥匙的正确方法:

Parse.initialize(appConfig.parse.appId);
Parse.masterKey = appConfig.parse.masterKey;
Run Code Online (Sandbox Code Playgroud)

  • 我想强调的是,在客户端应用程序中使用masterKey是主要安全漏洞,您基本上是在将管理员用户名/密码对用于所有用户数据,数据库等... @kembse (4认同)