如何解决使用REST API提取多对多关系项目
在Parse中,我有两个具有多对多关系的类,例如Products及其ProductImages。我在 Products 类中创建了与 ProductImages 的关系,并且所有这些在查询和更新中均能正常工作。关于Parse的多对多关系的文档很少。
如何使用各自的ProductImages数据(Rest API调用)查询所有产品?
期望的响应如下:
{
"name": "Apples","productImages": [
{
"imagePath":"","videoPath":""
},{
"imagePath":"","videoPath":""
}
]
}
解决方法
REST API中没有端点可以同时查询两个类,但是您可以编写一个云代码函数来执行此操作,并通过单个请求检索所需的所有数据。我会做这样的事情:
Parse.Cloud.define('getProductsAndImages',async req => {
const productsQuery = new Parse.Query('Product');
const products = await productsQuery.find();
return Promise.all(products.map(async product => ({
...product.toJSON(),productImagesObjs: await product.get('productImages').query().find()
})));
});
然后,您可以使用REST API调用该函数,如下所示:
curl -X POST \
-H "X-Parse-Application-Id: ${APPLICATION_ID}" \
-H "X-Parse-REST-API-Key: ${REST_API_KEY}" \
-H "Content-Type: application/json" \
-d '{}' \
https://server.address.com/parse/functions/getProductsAndImages
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。