【问题标题】:Usergrid: How to delete add on Metadata from Usergrid entitiesUsergrid:如何从 Usergrid 实体中删除添加的元数据
【发布时间】:2014-12-03 18:14:44
【问题描述】:

我在 usergrid 上创建了一个实体,但我发现 usergrid 在 JSON 中添加了额外的数据,我真的不想出现在 API 层中。例如这里是我的实体:

{
  **"uuid": "7cd5c98a-7b16-11e4-9085-b5397738dcd5",
  "type": "summaries",
  "created": 1417629724184,
  "modified": 1417629993800,**
  "accountId": "123123",
  "accounts": [
    {
      "id": "123123",
      "type": "Individual",
      "category": "Prepaid",

字段 uuid/type/created/modified 不是我想要提取的,尽管 usergrid 将其添加。我可以在接收端编写逻辑来解析它,但我们不想在代理中编写任何类型的业务逻辑。如何抑制这种行为?

【问题讨论】:

    标签: apigee usergrid


    【解决方案1】:

    不幸的是,Usergrid 并不适合开放 API,您应该将其置于 Apigee Edige 之类的管理层之后。登录您的 Apigee 帐户,然后点击创建和管理 API。

    在那里,您可以通过提取块或单个元素来操作 JSON 有效负载(如下所示,我获取所有帐户或仅获取列表中第一个帐户的 ID)

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <ExtractVariables async="false" continueOnError="false" enabled="true" name="Extract-Account-Response">
        <DisplayName>Extract Account Response</DisplayName>
        <FaultRules/>
        <Properties/>
        <IgnoreUnresolvedVariables>true</IgnoreUnresolvedVariables>
        <JSONPayload>
            <Variable name="allComments">
                <JSONPath>$.accounts</JSONPath>
            </Variable>
            <Variable name="account0">
                <JSONPath>$.accounts[0].id</JSONPath>
            </Variable>
        </JSONPayload>
        <Source clearPayload="false">commentResponse</Source>
    </ExtractVariables>
    

    如果您不使用 Apigee,您仍然需要在 Usergrid 前面放置某种程序化外观来操纵响应。

    【讨论】:

    • 谢谢迈克尔,这让我更清楚了,但是我想问一下,如果我专门模拟一个 API,如果我有一个使用 node.js 的控制器,我该怎么做?您可以推荐任何 node.js 库吗?
    • 我不是一个节点专家,但一般来说,javascript 有一些很棒的 JSON 解析工具,你可以很容易地运行像 jquery 这样的依赖库。在apigee.com/docs/api-services/content/… 上查看关于apigee 的Node 文档,在github.com/apigee/node-samples 上查看github 上的代码示例
    猜你喜欢
    • 2013-11-28
    • 1970-01-01
    • 2015-12-26
    • 2015-02-14
    • 2014-10-02
    • 2015-05-01
    • 2015-07-26
    • 1970-01-01
    • 2015-05-13
    相关资源
    最近更新 更多