0

我已經使用Google提供的啓動器代碼啓動了Google雲端點v2項目,該代碼公開了一個名爲「echo」的API。無法將其他API端點類添加到GCP端點v2

我的目標是添加另一個暴露的類(每個業務模塊一個類/ api名稱)。 部署完成後,對新API的所有調用都不會生成「未找到」錯誤。

作爲一個解決方案,我試圖查看web.xml並做了以下更改。

初始WEB.XML版本:

<!-- Route API method requests to the backend. --> 
<servlet-mapping> 
    <servlet-name>EndpointsServlet</servlet-name> 
    <url-pattern>/_ah/api/*</url-pattern> 
</servlet-mapping> 

我已經加了我新的servlet和嘗試添加如下新的servlet映射:添加/回聲/ *後

<servlet-mapping> 
    <servlet-name>EndpointsServlet</servlet-name> 
    <url-pattern>/_ah/api/echo/*</url-pattern> 
</servlet-mapping> 

<servlet-mapping> 
    <servlet-name>UserEndpointsServlet</servlet-name> 
    <url-pattern>/_ah/api/user/*</url-pattern> 
</servlet-mapping> 

現在初始servlet映射,ECHO工作服務停止服務,並且系統仍然無法調用新服務。

有沒有人知道我在做什麼錯,什麼是解決方案? 我不認爲端點v2框架不支持此功能,因爲它似乎是一種很好的設計方法來完成這種分離。

回答

0

你應該使用相同的servlet,使用一個init-PARAM所有你需要的端點類:

<init-param> 
     <param-name>services</param-name> 
     <param-value>com.example.echo.Echo,com.example.echo.Echo2</param-value> 
    </init-param> 

在web.xml,則不應使用/_ah/api/echo/*/_ah/api/user/*。相反,請使用@Api(name = "echo")@Api(name = "user")並將EndpointsServlet綁定到/_ah/api/*