日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

HTTP API方式

集成流目前支持HTTP請求和返回的同步調用方式觸發。該方式在集成流中以HTTP API Listener和HTTP API Reply兩個節點的形式表示。在創建集成流時,平臺會根據創建時選擇的觸發方式類型在流中自動創建這兩個節點。頭尾的兩個節點不可刪除、不可移動,支持修改內容。

HTTP API Listener

概述

開發過程中:主要用于描述集成流和集成接口之間的綁定關系,如下圖所示。集成流和集成接口之間的關系,請參見集成流與集成接口的關系說明

image.png

運行時:主要負責路由和入參校驗,將校驗通過的請求轉換成相應的消息格式并向后續節點傳遞。

路由和入參校驗

引擎在運行時會根據請求的HTTP Request Method和HTTP Requst URL進行匹配,查找對應的元數據進行動態處理。

同時,引擎還會根據集成接口定義的入參,對HTTP請求內容進行校驗,只有滿足條件的請求才能響應執行。如果校驗失敗,會直接返回錯誤。

  • 一次請求中同時出現多個校驗失敗錯誤時,只會選擇報出其中一個錯誤信息。

  • 錯誤碼信息如下:

錯誤代碼

HTTP狀態碼

Message

描述

I400IP

400

Invalid parameter `${ParameterName}`

HTTP請求校驗失敗

示例如下:

  • 集成接口的定義如下,并已經完成與集成流的綁定。

image.png

  • 使用curl調用該集成接口,模擬Query參數的類型錯誤(對應本例中的q1參數),如下圖所示。

image.png

  • 使用curl調用該集成接口,模擬Body錯誤(對應本例中不滿足對象的JSON Schema定義),如下圖所示。

image.png

節點輸出消息

輸出消息的Payload為HttpRequest類型,關于HttpRequest類型說明,請參見HttpRequest

本文以獲取調用集成接口的入參內容為例說明,具體如下。

  • 集成接口的定義如下,并完成與集成流的綁定。

image.png

  • 集成流中,將請求參數q1保存到消息的變量字段中,設置變量的節點配置如下:

image.png

  • 對應的腳本內容如下,可獲取到了接口的入參q1的值。

package bwiflu6pwj543473k0;

import com.alibaba.bwif.script.core.StepMessage
import com.alibaba.bwif.script.core.BwifHandler
import com.alibaba.bwif.script.core.protocol.http.HttpRequest
import com.alibaba.bwif.script.core.Entity

class SimpleHandler implements BwifHandler {
    @Override
    Object handle(StepMessage message) {
        HttpRequest req = message.getPayload()
        String q1 = req.getQueryParam("q1")
        return q1
    }
}

HTTP API Reply

概述

您可以在本節點中定義調用集成接口獲得的HTTP Response的內容。

節點配置

image

主要的節點配置信息為HTTP響應信息(Response),相關配置項詳細說明如下:

配置項

說明

HTTP Status Code

  • 必填。

  • 支持固定值和腳本兩種方式配置。

  • 使用腳本配置時,需要返回Integer類型。

Body

  • 非必填。

  • 支持固定值和腳本兩種方式配置。

  • Content-Type目前僅支持application/json類型。

  • 使用腳本配置時,需要返回Entity類型。

Header

  • 非必填。

  • 支持固定值和腳本兩種方式配置。

  • 固定值方式下可添加多行,每行為key-value結構。

  • 使用腳本配置時,需要返回HashMap<String, String>結構。

Cookie

為Cookie單獨提供的配置,運行時會合并到Response Header中。Cookie相關的操作建議優先在Cookie頁簽下操作。如果同時在Header頁簽中配置了“Set-Cookie”,則引擎在處理時不會對Set-Cookie內容進行合并,而是作為多條重復Header方式返回。

  • 非必填。

  • 支持固定值和腳本兩種方式配置。

  • 固定值方式下可添加多行,每行為key-value結構。

  • 使用腳本配置時,需要返回HashMap<String, String>結構。

說明

HTTP響應信息和此集成流綁定的集成接口定義沒有直接關系,需要開發者根據接口定義完成返回內容的設計。

使用示例

動態生成Entity對象,作為HTTP Response body的內容。具體示例請參見快速入門HTTP API Reply

默認Response結構

引擎默認對返回的HTTP Response結構有統一約定,具體如下:

  • Body部分。由開發者指定,通過HTTP API Reply節點中配置而來。

  • Header部分。引擎默認會增加如下信息,用于方便排查問題。

Header Key

舉例

說明

X-Ca-Request-Id

F21D0412-65A4-4312-9305-60C112D019AE

集成接口會發布到API網關上,此ID為網關自動生成,標識每次請求。

X-Bw-Trace-Id

3F0C6F80-AD22-4427-9151-3D7B1FDAD29D

集成流引擎生成的TraceID,標識此次調用的唯一ID。

X-Bwiaf-Error-Code

X500ER

集成流引擎返回的錯誤碼,只有報錯時會出現。

X-Bwiaf-Error-Message

Service Internal Error

集成流引擎返回的錯誤碼補充描述,只有報錯時會出現。