Parse Server 正在使用的环境密钥是否可以在客户端应用程序中进行验证?
Can the environmental keys that Parse Server is Using be verified inside the client app?
我想知道 if/how Parse-Server 环境变量是否可以在客户端 IOS App.
中验证
对于我们这些还不习惯后端系统的人来说,能够在测试期间通过客户端验证后端 Parse-Server 实际上使用了正确的环境密钥会很有用。
如果您正在测试设置解析服务器的密钥,例如 appId、clientKey、masterKey,您可以实施验证云代码。
一旦你使用了appId(或者你设置了clientKey),你就可以调用这个函数。否则,你会得到错误。您不能在 client-sdk 中使用 MasterKey。如果你还想测试它,你可以在你的客户端上用 masterKey 实现一个 rest api。但是 masterKey 不应该出现在客户端,你应该避免用户触发这个,或者有人可能会得到你的 masterKey。
Parse.Cloud.define("verify", function(request, response) {
if(request.master==true){
response.success(true);
}else{
response.error(new Error('MasterKey not matched'));
}
});
已编辑
通过实现一个globalConfig对象,随心所欲地验证它。
这是一个示例。
globalConfig.js
var globalConfig = {};
globalConfig.verify = function(key) {
return globalConfig.keys.testKey==key;
}
module.exports = globalConfig;
index.js(部分)
var globalConfig = require('./globalConfig.js');
var initObj = {
databaseURI: databaseUri || 'mongodb://localhost:27017/dev',
cloud: process.env.CLOUD_CODE_MAIN || __dirname + '/cloud/main.js',
appId: process.env.APP_ID || 'myAppId',
masterKey: process.env.MASTER_KEY || '', //Add your master key here. Keep it secret!
serverURL: process.env.SERVER_URL || 'http://localhost:1337/parse', // Don't forget to change to https if needed
liveQuery: {
classNames: ["Posts", "Comments"] // List of classes to support for query subscriptions
},
testKey: "this is test"
}
var api = new ParseServer(initObj);
globalConfig.keys = initObj;
然后您可以使用 globalConfig.verify() 检查您的密钥
云代码示例
var globalConfig = require('../globalConfig.js');
Parse.Cloud.define('verify', function(req, res) {
res.success(globalConfig.verify(req.params.testKey));
});
或者您可以使用快递 post
app.post('/test', function(req, res) {
//verify and response
})
我想知道 if/how Parse-Server 环境变量是否可以在客户端 IOS App.
中验证对于我们这些还不习惯后端系统的人来说,能够在测试期间通过客户端验证后端 Parse-Server 实际上使用了正确的环境密钥会很有用。
如果您正在测试设置解析服务器的密钥,例如 appId、clientKey、masterKey,您可以实施验证云代码。
一旦你使用了appId(或者你设置了clientKey),你就可以调用这个函数。否则,你会得到错误。您不能在 client-sdk 中使用 MasterKey。如果你还想测试它,你可以在你的客户端上用 masterKey 实现一个 rest api。但是 masterKey 不应该出现在客户端,你应该避免用户触发这个,或者有人可能会得到你的 masterKey。
Parse.Cloud.define("verify", function(request, response) {
if(request.master==true){
response.success(true);
}else{
response.error(new Error('MasterKey not matched'));
}
});
已编辑
通过实现一个globalConfig对象,随心所欲地验证它。
这是一个示例。
globalConfig.js
var globalConfig = {};
globalConfig.verify = function(key) {
return globalConfig.keys.testKey==key;
}
module.exports = globalConfig;
index.js(部分)
var globalConfig = require('./globalConfig.js');
var initObj = {
databaseURI: databaseUri || 'mongodb://localhost:27017/dev',
cloud: process.env.CLOUD_CODE_MAIN || __dirname + '/cloud/main.js',
appId: process.env.APP_ID || 'myAppId',
masterKey: process.env.MASTER_KEY || '', //Add your master key here. Keep it secret!
serverURL: process.env.SERVER_URL || 'http://localhost:1337/parse', // Don't forget to change to https if needed
liveQuery: {
classNames: ["Posts", "Comments"] // List of classes to support for query subscriptions
},
testKey: "this is test"
}
var api = new ParseServer(initObj);
globalConfig.keys = initObj;
然后您可以使用 globalConfig.verify() 检查您的密钥
云代码示例
var globalConfig = require('../globalConfig.js');
Parse.Cloud.define('verify', function(req, res) {
res.success(globalConfig.verify(req.params.testKey));
});
或者您可以使用快递 post
app.post('/test', function(req, res) {
//verify and response
})