如何通过密钥将动态值传递给Apigee?

时间:2019-03-15 19:30:25

标签: rest api apigee apigee127

我有一个rest应用程序,它根据用户通过UI选择的城市或县,从数据库中提取数据。

由于用户可以选择所有50个州,因此会动态传递城市和县。

端点如下:

http://localhost:8080/my-api/state/FL/City
http://localhost:8080/my-api/state/FL/County
http://localhost:8080/my-api/state/CA/City
http://localhost:8080/my-api/state/AK/County
etc...etc....

现在,我想使用Apigee和密钥来保护这些端点。我已经创建了代理和产品,并能够使用新的Apigee URL从应用程序获取json:

https://company.api-nonprod.com/my-first-api/state/TX/City?apikey=ldekQ5VqlXFQq7YusetSeqbeidxdo5

到目前为止,一切都很好。 :)

现在,我需要将此EndPoint添加到前端配置文件中。
我的本地端点工作正常。

 http://localhost:8080/my-api/state

如何添加此新的Apigee端点和密钥?

这不起作用,因为它一直将参数附加到url的末尾而不是apikey之前。

https://company.api-nonprod.com/my-first-api/state?apikey=ldekQ5VqlXFQq7YusetSeqbeidxdo5

错误网址

https://company.api-nonprod.com/my-first-api/state?apikey=ldekQ5VqlXFQq7YusetSeqbeidxdo5/TX/City

浏览Apigee文档之后,我进入了“开发”选项卡,可以在其中指定如何引用APIKey。

<VerifyAPIKey name="APIKeyVerifier">
    <APIKey ref="request.formparam.x-apikey"/>
</VerifyAPIKey>

<VerifyAPIKey name="APIKeyVerifier">
    <APIKey ref="request.header.x-apikey"/>
</VerifyAPIKey>

<VerifyAPIKey name="APIKeyVerifier">
    <APIKey ref="request.queryparam.x-apikey"/>
</VerifyAPIKey>

现在,我陷入了AssignMessage消息文档中。

如何通过密钥将动态值传递给Apigee?

1 个答案:

答案 0 :(得分:0)

您必须处理在应用程序中构造URL。

尝试从邮递员处进行打击。.将您的代理URL和requestMapping附加到您的代理URL。

它应该可以工作了,或者到那时应该已经可以工作了;),因为两个月过去了:P