W3Cschool
恭喜您成為首批注冊用戶
獲得88經驗值獎勵
spring-cloud-function-web
模塊具有自動配置,當其包含在Spring Boot web應用程序中(具有MVC支持)時,將激活該配置。還有一個spring-cloud-starter-function-web
來收集所有可選的依賴項,以防您只需要簡單的入門經驗。
激活web配置后,您的應用程序將具有一個MVC端點(默認情況下在“ /”上,但可以使用spring.cloud.function.web.path
進行配置),該端點可用于訪問應用程序上下文中的功能。支持的內容類型是純文本和JSON。
方法 | 路徑 | 請求 | 響應 | 狀態(tài) |
---|---|---|---|---|
GET |
/{supplier} |
- |
Items from the named supplier |
200 OK |
POST |
/{consumer} |
JSON object or text |
Mirrors input and pushes request body into consumer |
202 Accepted |
POST |
/{consumer} |
JSON array or text with new lines |
Mirrors input and pushes body into consumer one by one |
202 Accepted |
POST |
/{function} |
JSON object or text |
The result of applying the named function |
200 OK |
POST |
/{function} |
JSON array or text with new lines |
The result of applying the named function |
200 OK |
GET |
/{function}/{item} |
- |
Convert the item into an object and return the result of applying the function |
200 OK |
如上表所示,端點的行為取決于方法以及傳入請求數據的類型。當傳入的數據是單值的并且目標函數被聲明為顯然是單值的(即不返回集合或Flux
)時,響應也將包含一個單值。對于多值響應,客戶端可以通過發(fā)送“接受:文本/事件流”來請求服務器發(fā)送的事件流。
如果目錄中只有一個功能(消費者等),則路徑中的名稱是可選的。可以使用管道或逗號分隔功能名稱來解決復合函數(管道在URL路徑中是合法的,但在命令行上鍵入會有點尷尬)。
如果目錄中只有一個功能,而您又想將一個特定功能映射到根路徑(例如“ /”),或者想要組合多個功能然后映射到根路徑,則可以這樣做通過提供spring.cloud.function.definition
屬性,該屬性實際上由spring- = cloud-function- web模塊使用,以為存在某種類型的沖突(例如,多個功能可用等)的情況提供默認映射。
例如,
--spring.cloud.function.definition=foo|bar
上面的屬性將組成'foo'和'bar'函數,并將組成的函數映射到“ /”路徑。
在Message<?>
中用輸入和輸出聲明的函數和使用者將在輸入消息上看到請求標頭,并且輸出消息標頭將轉換為HTTP標頭。
在發(fā)布文本時,Spring Boot 2.0和更早版本的響應格式可能會有所不同,具體取決于內容協商(提供內容類型和acpt標頭以獲得最佳效果)。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯系方式:
更多建議: