如何通过代码 Parse.com 设置自定义对象 ID
How to set Custom object Id through could code Parse.com
我正在使用由 Back4app 托管的 Parse server 3.10。我在服务器自定义设置中启用了允许自定义 ID 的选项,{"allowCustomObjectId": true}
,现在我可以通过这样的 API 调用来设置对象的自定义 ID。
-H "X-Parse-Application-Id: APPLICATIONID"
-H "X-Parse-REST-API-Key: REST_KEY"
--data-urlencode "{"objectId":"xWMyZ4YEGZ","name":"Nat"}"
https://parseapi.back4app.com/classes/Test
但是我需要通过云代码来设置它,现在我正在尝试做这样的事情,但是这是行不通的。
Parse.Cloud.define("setId",async (request) => {
const GameScore = Parse.Object.extend("GameScore");
const gameScore = new GameScore();
gameScore.set("objectId", "8YgwDJ19qX");
gameScore.set("name","nat");
return await gameScore.save(null,{useMasterKey:true});
});
当我尝试 运行 这个云函数时,这是我得到的错误。
{
"code": 101,
"error": "Object not found."
}
期待解决方案。
目前似乎无法使用 JavaScript 通过云代码设置自定义 ID。解决方法是通过云代码使用 REST API,如下所示:
Parse.Cloud.define("createObjectId", async (request) => {
//Your custom id
const objectId = "8YgwDJ18qX";
//Your Class name and another optional class variable
const { nameClass, propertyName } = request.params;
//Make sure to define these environment variables in your server's env file
const { APPLICATION_ID, REST_KEY, SERVER_URL } = process.env;
//Finally call hit the api.
return Parse.Cloud.httpRequest({
method: 'POST',
url: `${SERVER_URL}/classes/${nameClass}`,
headers: {
'Content-Type': 'application/json;charset=utf-8',
'X-Parse-Application-Id':APPLICATION_ID,
'X-Parse-REST-API-Key':REST_KEY
},
body: {
objectId: objectId,
name: propertyName
}
});
});
我正在使用由 Back4app 托管的 Parse server 3.10。我在服务器自定义设置中启用了允许自定义 ID 的选项,{"allowCustomObjectId": true}
,现在我可以通过这样的 API 调用来设置对象的自定义 ID。
-H "X-Parse-Application-Id: APPLICATIONID"
-H "X-Parse-REST-API-Key: REST_KEY"
--data-urlencode "{"objectId":"xWMyZ4YEGZ","name":"Nat"}"
https://parseapi.back4app.com/classes/Test
但是我需要通过云代码来设置它,现在我正在尝试做这样的事情,但是这是行不通的。
Parse.Cloud.define("setId",async (request) => {
const GameScore = Parse.Object.extend("GameScore");
const gameScore = new GameScore();
gameScore.set("objectId", "8YgwDJ19qX");
gameScore.set("name","nat");
return await gameScore.save(null,{useMasterKey:true});
});
当我尝试 运行 这个云函数时,这是我得到的错误。
{
"code": 101,
"error": "Object not found."
}
期待解决方案。
目前似乎无法使用 JavaScript 通过云代码设置自定义 ID。解决方法是通过云代码使用 REST API,如下所示:
Parse.Cloud.define("createObjectId", async (request) => {
//Your custom id
const objectId = "8YgwDJ18qX";
//Your Class name and another optional class variable
const { nameClass, propertyName } = request.params;
//Make sure to define these environment variables in your server's env file
const { APPLICATION_ID, REST_KEY, SERVER_URL } = process.env;
//Finally call hit the api.
return Parse.Cloud.httpRequest({
method: 'POST',
url: `${SERVER_URL}/classes/${nameClass}`,
headers: {
'Content-Type': 'application/json;charset=utf-8',
'X-Parse-Application-Id':APPLICATION_ID,
'X-Parse-REST-API-Key':REST_KEY
},
body: {
objectId: objectId,
name: propertyName
}
});
});