如何将自定义 ObjectId 添加到解析服务器对象?

Posted

技术标签:

【中文标题】如何将自定义 ObjectId 添加到解析服务器对象?【英文标题】:How to add custom ObjectId to parse-server object? 【发布时间】:2020-01-19 21:41:25 【问题描述】:

我在通过 Mongoose 将数据添加到我的 User 类时遇到问题,以后无法通过解析 API 更新它。

我发现这是因为 mongoose 使用 ObjectId 作为 _id 字段并解析只是使用纯字符串作为 ObjectId

问题是如何在 Parse Server 对象创建中将我的自定义唯一纯字符串设置为 ObjectId?

【问题讨论】:

请提供一些你想要完成的具体代码。是否要将更多数据保存到Parse.User 我正在尝试使用猫鼬客户端向 Parse.User 添加数据。但是使用 mongoose 生成的 objectId 与解析规范(仅纯字符串)不兼容,因此我以后无法使用 parse 更新新对象 我找到了这个(github.com/parse-community/parse-server/pull/6177) PR 但没有记录在任何地方 您发送的这个 PR 只有在您尝试使用 API 加载数据时才有用。由于您使用的是猫鼬,因此您必须以 Parse 创建的相同格式创建 ID。你可以看到 Parse 如何做到这一点here。您应该以类似的方式生成。 【参考方案1】:

你可以这样做:

const cryptoUtils = require('parse-server/lib/cryptoUtils');
const id = cryptoUtils.newObjectId();

来源:https://github.com/parse-community/parse-server/blob/master/src/cryptoUtils.js

【讨论】:

以上是关于如何将自定义 ObjectId 添加到解析服务器对象?的主要内容,如果未能解决你的问题,请参考以下文章

如何将自定义过滤器参数添加到已经对 beforeRequest 进行过滤的 MvcJqGrid postData?

将自定义 NER 模型添加到 spaCy 管道

如何将自定义的 MouseMotionListener 添加到 JPanel?

如何将自定义 EndPointBehavior 添加到服务的 web.config?

如何将自定义 css 工具提示添加到 extjs 列标题?

如何将自定义 WCF 协议通道添加到现有绑定