モックレスポンス
Chuteは実際のサーバーに到達せずに、マッチしたHTTP/HTTPSリクエストに対してモックデータを返すことができます。これはテスト、開発、またはカスタムレスポンスで不要なコンテンツをブロックするのに役立ちます。
モックルールは[Map Local]セクションで定義されます。
1つのリクエストに適用されるモックルールは1つだけです — URLパターンにマッチした最初のルールが使用されます。
Map Local形式
ローカルファイルから、またはbase64エンコードされたコンテンツでモックレスポンスを提供する場合:
[Map Local]
^https://example\.com/api data="/path/to/mock-response.json"
^https://example\.com/page data="/path/to/page.html" header="SGVhZGVyOiBWYWx1ZQ=="
^https://example\.com/pixel base64="R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"
Map Localパラメータ
| パラメータ | 説明 |
|---|---|
data="/path/to/file" |
レスポンスボディとして提供するファイルパス。ファイルはリクエスト時に読み取られます。 |
base64="<encoded>" |
Base64エンコードされたレスポンスボディコンテンツ。 |
header="<base64>" |
Base64エンコードされたカスタムレスポンスヘッダー(Key: Value\n形式)。 |
data=またはbase64=の少なくとも1つを指定する必要があります。
テンプレート変数
data=またはbase64=を使用する場合、レスポンスボディはテンプレート変数の置換をサポートします:
| 変数 | 置換後 |
|---|---|
{{url}} |
完全なリクエストURLパス |
{{host}} |
リクエストホスト名 |
{{path}} |
相対URLパス |
{{method}} |
HTTPメソッド |
{{ua}} |
User-Agentヘッダー値 |
モックレスポンスファイルの例(response.json):
{
"requested_url": "{{ "{{url}}" }}",
"host": "{{ "{{host}}" }}",
"method": "{{ "{{method}}" }}"
}
注意: HTTPSリクエストの場合、マッチするホスト名に対してMitM復号が有効になっている必要があります。MitMなしのHTTPSトラフィックに対するモックルールは無視されます。