Usergrid:如何从Usergrid实体中删除元数据添加

时间:2014-12-03 18:14:44

标签: apigee usergrid

我在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可以解决这个问题。我可以在接收端编写解析它的逻辑,但我们不想在Proxy中编写任何类型的业务逻辑。我该如何抑制这种行为?

1 个答案:

答案 0 :(得分:0)

不幸的是,Usergrid对Open 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前面放置某种程序设计来操纵响应。