簡體   English   中英

試用HttpBuilder-NG-替換舊的HttpBuilder或wslite

[英]Trying out HttpBuilder-NG - replacing old HttpBuilder or wslite

我正在嘗試切換到HttpBuilder-NG,但遇到了一些困難。 我似乎找不到任何使用響應標頭甚至響應狀態代碼的具體示例。 特定於舊的httpbuilder-RESTClient並不簡單。 另外,我將其用於測試。 這是我需要翻譯為HttpBuilder-NG的一個示例

def r = client.get(path: '/ws/v1/ping')
assert r.status == 200

在HttpBuilder-NG中看起來像什么?


您的評論使我走上了正確的道路。 謝謝! 我希望通過圍繞HttpBuilder-NG制作一個包裝器類來避免重寫數千行測試代碼,這樣它將返回類似於舊HttpBuilder / RESTClient的對象。 同樣,類似的東西也可以幫助那些試圖擺脫wslite的人們。 到目前為止,這是我想出的方法,以防對他人有所幫助:

def client = HttpBuilder.configure {
             request.uri = 'https://myServer.server.org'
             request.auth.basic 'user1', 'fakePass1'
             ignoreSslIssues execution
             }
//use the client to make hit the ping endpoint
def r = client.get {
             request.uri.path = path+'ping'
             response.success {FromServer fs, body ->
                        [status: fs.statusCode,
                         headers: fs.headers,
                         data: body
                        ]
             }
        }
assert r.status == 200
assert r.headers.size() > 0
assert r.data[0] == 'pong'

有很多示例的用戶指南

您的示例可以通過多種方式完成,其中之一是:

HttpBuilder.configure { 
    request.uri = '<YOUR_SERVER>'
}.get {
    request.uri.path = '/ws/v1/ping'
    response.when(200){
        // ...
    }
}

有關所引用的類和方法的更多詳細信息,請參見JavaDocs

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM