No. Главный ключ будет использоваться только в облачную кода на стороне сервера и не будут подвергаться воздействию ваших клиентов, поэтому, когда вы вызываете Push API из облака кода, который необходимо установить useMasterKey: правда
для того, чтобы отправить толчок к вашему Y вам нужно сделать следующее:
при создании ParseInstallation в коде клиента убедитесь, что вы также сохранить пользователь там в переменном olumn. Вам нужно сохранить пользователя внутри ParseInstallation, потому что ваше требование - отправить push одному или нескольким пользователям, чтобы знать, какие устройства у этого пользователя есть (у одного пользователя может быть несколько устройств, конечно) вам нужно сохранить ссылку на пользователя внутри ParseInstallation класса
Далее вам нужно использовать следующий код для того, чтобы отправить уведомление толчок к пользователю:
Parse.Cloud.afterSave("SendPush", function(request) {
var query = new Parse.Query(Parse.User);
query.equalTo("objectId", "{YOUR_USER_OBJECT_ID"});
/* here you get the user by it's id. if you have another identifier or you want to use another field you can change it. You can also add multiple conditions if you like */
// here you can add other conditions e.g. to send a push to sepcific users or channel etc.
var payload = {
alert: "YOUR_MESSAGE"
// you can add other stuff here...
};
Parse.Push.send({
data: payload,
where: query
}, {
useMasterKey: true
})
.then(function() {
response.success("Push Sent!");
}, function(error) {
response.error("Error while trying to send push " + error.message);
});
});
Пожалуйста, убедитесь, что вы отправили объектуId пользователя Y из клиента. В случае, если вы не отправляете, вам нужно будет найти способ его получить (возможно, извлекая его из БД)
Большое вам спасибо, Ran! Я предполагаю, что мой главный вопрос заключается в том, чтобы заставить все разрозненные системы говорить друг с другом ... как то, как код облака с парсером поговорит с MongoDB и все это поговорит с AWS. Но это также полезно! – JustK