我有一個Google App Engine項目,通過Google Cloud Endpoints公開API。到目前爲止,所有API /端點都使用OAuth2身份驗證(和授權),這對於「真實」用戶來說很好。Google雲端點API密鑰授權的Java註釋?
現在我想公開一些旨在被機器而不是人類用戶使用的新API。我希望這些端點能夠使用API密鑰授權。
在雲控制檯中,我創建了一個API密鑰(API管理器/憑證)。
Google documentation使用yaml文件來配置API密鑰授權。但是,我不使用yaml配置,並且它對於Java應用程序似乎並不常見。
我期望對於Java來說,將會有批註使用API密鑰進行授權。但是,用於Java的Google documentation並沒有提到這樣的事情。
是否可以在使用註釋的Java應用程序中使用API密鑰?有另一種建議的方式來做到這一點?
更新: 似乎API密鑰在測試版(2016年11月)的Cloud Endpoints 2.0中工作。但是,CE 2.0並不支持Google Eclipse插件,並且需要Maven(我非常不喜歡)。我沒有時間重寫我的項目,所以現在我已經在API中添加了一個額外的'api_key'參數,我在代碼中進行檢查。請注意,此參數不能稱爲「密鑰」,因爲雲端點會認爲這是它自己的API密鑰,並通過說沒有配置訪問來回應。
Google Eclipse插件還沒有(還)似乎有此更新?它看起來像卡住在1.9.34。或者也許我需要先更新Eclipse(仍然使用Mars 2)? – rakensi
只有新框架支持此功能,而App Engine SDK不附帶此功能。您需要com.google.endpoints,endpoints-framework工件。 – saiyr
謝謝,我會試試。 – rakensi