2014-11-04 61 views
9

我在java中使用swagger。在Swagger UI中發送動態自定義標題嘗試出

我正在通過代碼中的requestAttributes讀取一個名爲callerId的頭文件。我沒有通過註釋@HeaderParam使用標題。

因爲這個原因,標題部分沒有出現在試用期的交易者UI中。

我怎樣才能使這個標題出現在試用的形式。

有沒有什麼辦法可以實現這一點,而不需要硬編碼頭的值。

在此先感謝。

回答

13

您可以使用@ApiImplicitParams和@ApiImplicitParam將參數添加到操作中。

以下wiki文檔應爲您提供有關如何使用這些註釋的解釋 - https://github.com/swagger-api/swagger-core/wiki/Annotations#apiimplicitparam-apiimplicitparams

記住我這裏假設這不是一個安全的頭,但該API的實際部分(至少根據你給的描述)。如果您正在尋找安全標題,那麼還有一種替代方法。請留下評論,我將編輯此回覆。

+0

是的我正在尋找一個API頭不是安全頭。我放了註釋,但我仍然無法在swagger UI中看到它或者在調用中傳遞它。我使用球衣。 @ApiImplicitParam(name =「name」,value =「example」,required = true,dataType =「string」,paramType =「query」)。請指教。 – 2014-11-05 07:19:49

+0

您需要使用'@ ApiImplicitParam'作爲'@ ApiImplicitParams'的值(注意單數和複數形式)。此外,請確保paramType是「標題」,否則您將添加查詢參數。 – Ron 2014-11-05 07:47:43

+1

它工作。謝謝!。 @ApiImplicitParams({@ ApiImplicitParam(name =「callerId」,required = true,dataType =「string」,paramType =「header」)}) – 2014-11-05 08:28:25

相關問題