我有一个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?
答案 0 :(得分:0)
您必须处理在应用程序中构造URL。
尝试从邮递员处进行打击。.将您的代理URL和requestMapping附加到您的代理URL。
它应该可以工作了,或者到那时应该已经可以工作了;),因为两个月过去了:P