0
我正在爲一個iOS應用程序模擬端點,這個應用程序碰撞了十幾個不同的HTTPS主機。根據我對WireMock文檔的理解以及來自維護人員的this answer,WireMock設計爲僅代理/模擬一臺主機。我目前的計劃是使用dnsmasq來一次指向WireMock中的一臺主機。有多個主機和dnsmasq的WireMock?
+----------+ +-------------------+
| | | |
| WireMock +-->Proxy+---> 123.example.com |
| | | |
+----^-----+ +-------------------+
|
| +-------------------+
+-------+ +----+----+ | |
| +---> https://123.example.com +---> | +-----> xyz.example.com |
| | | | | | |
| App +---> https://xyz.example.com +---> dnsmasq +---+ +-------------------+
| | | |
| +---> https://9.different.com +---> +---+ +-------------------+
+-------+ +---------+ | | |
+-----> 9.different.com |
| |
+-------------------+
這似乎很笨重,有沒有更好的方法來模擬多個這樣的主機?其中一個主要限制是它們必須通過HTTPS進行測試,而不是未加密的。
感謝您的快速回復@Tom - 我在鏈接問題中閱讀了有關匹配存根的問題,但我想在記錄模式下使用WireMock來首先代理通信來創建存根。一旦我擁有了它們,這個解決方案將適用於播放模式。我誤解了嗎? – suite22
我可能一直在這個答案中胡言亂語。我想如果你開始使用'--match-headers =「Host」'錄製,那可能會有訣竅。 – Tom
我想我看到這將如何工作在播放模式或普通的HTTP,但對於HTTPS我看不到我可以如何指定多個證書。傳入多個密鑰庫失敗:'找到https-keystore選項的多個參數,但只請求一個''。 – suite22