私は、契約の検証に pact-jvm を使用している Java のスプリング ブート API を持っています。ゲートウェイが処理する新しいパスを使用して同じ API を使用したい新しいクライアントがいますが、これは契約に問題を引き起こします。リクエストをインターセプトし、新しい契約が指すようにリクエストのパスを変更したいと考えています。旧道へ。私はいくつかの資料をオンラインで参照しようとしていて、これを見つけました: https://medium.com/dazn-tech/pact-contract-testing-dealing-with-authentication-on-the-provider-51fd46fdaa78
以下のコードはリクエストの更新された値を出力しますが、協定はまだ新しいパスを使用しているかのように 404 エラーで失敗します
requestFilter = { req ->
println "incoming request : $req"
if ("$req".contains('/new-context') ) {
req = "$req".replace('/new-context', '/old-context')
println "updated request : $req"
}
}