无法在Mule Studio中使用任何Google连接器?

无法在Mule Studio中使用任何Google连接器?,mule,google-calendar-api,mule-studio,mule-el,Mule,Google Calendar Api,Mule Studio,Mule El,我已经测试过Twitter和LinkedIn,我似乎最终能够让它们正常工作,但我就是找不到足够的材料让Google连接器正常工作。使用Google日历连接器时,我尝试使用-#[flowVars['tokenId']]收集令牌,但值总是显示为null。我做错什么了吗?有人能帮忙吗 谢谢 灰烬。回答了我自己的问题,其他人都在为同样的问题挣扎- 管理OAuth令牌(可选) 配置对象存储 为了保持数据的持久性,您需要将其存储在某个位置,建议为此使用ObjectStore。安装ObjectStore连接器

我已经测试过Twitter和LinkedIn,我似乎最终能够让它们正常工作,但我就是找不到足够的材料让Google连接器正常工作。使用Google日历连接器时,我尝试使用-
#[flowVars['tokenId']]
收集令牌,但值总是显示为
null
。我做错什么了吗?有人能帮忙吗

谢谢


灰烬。

回答了我自己的问题,其他人都在为同样的问题挣扎-

管理OAuth令牌(可选)

配置对象存储

为了保持数据的持久性,您需要将其存储在某个位置,建议为此使用ObjectStore。安装ObjectStore连接器。在应用程序中进行如下配置:

<objectstore:config name="ObjectStore" doc:name="ObjectStore" />

授权后存储令牌

在完成授权之后,您正在调用的服务的accessTokenId作为一个名为OAuthAccessTokenId的流变量可用。您必须保留此ID,以便在将来调用连接器时使用它。此示例显示如何将此变量存储到accessTokenId键下的ObjectStore中

<flow name="authorize-google" doc:name="authorize-google">
        <http:inbound-endpoint exchange-pattern="request-response" host="localhost" port="8081" path="authorize" doc:name="HTTP"/>
        <google-contacts:authorize config-ref="Google_Contacts" doc:name="Authorize GContacts"/>
        <objectstore:store config-ref="ObjectStore" key="accessTokenId" value-ref="#[flowVars['OAuthAccessTokenId']]" overwrite="true" doc:name="ObjectStore"/>    
</flow>

使用您的访问令牌

连接器的任何调用都必须从ObjectStore加载访问令牌并引用它。此示例显示从ObjectStore加载它并在继续之前检查它是否已设置

<enricher target="#[flowVars['accessTokenId']]" doc:name="Message Enricher">
            <objectstore:retrieve config-ref="ObjectStore" key="accessTokenId" defaultValue-ref="#['']" doc:name="Get AccessToken"/>
</enricher>
<expression-filter expression="#[flowVars['accessTokenId'] != '']" doc:name="Is Access Token Set"/>

accessTokenId作为流变量可用后,您可以在连接器操作中引用它:

<google-contacts:get-contacts config-ref="Google_Contacts" accessTokenId="#[flowVars['accessTokenId']]" />

更多详情请参阅-

这是它在工作室里的样子-

谢谢

灰烬