Question#45(AZ-204)
HOTSPOT 問題(2/3) あなたは Contoso, Ltd. で働いています。 次の XML マークアップを使用して API ポリシー オブジェクトを定義しています。
<set-variable name="bodySize" value="@(context.Request.Headers["Content-Length"][0])" />
<choose>
<when condition="@(int.Parse(context.Variables.GetValueOrDefault<string>("bodySize")) < 512000)">
</when>
<otherwise>
<rewrite-uri template="/put" />
<set-backend-service base-url="http://contoso.com/api/9.1/" />
</otherwise>
</choose> 設問
以下の各記述について、正しい場合は「はい」、誤っている場合は「いいえ」を選択してください。
回答エリア
記述(Statement): ボディサイズが 256 KB を超える場合、エラーが発生します。
正解:B
コード:
<when condition="@(int.Parse(...) < 512000)">計算: $512,000$ バイトは、約 $500text{ KB}$ ($512,000 / 1,024$) です。
理由: 条件式は「512,000 バイト未満なら何もしない(
<when>)、それ以上なら URI を書き換える(<otherwise>)」となっています。したがって、256 KB(約 262,144 バイト)の場合、条件内(<512000)に収まるためエラーにはならず、通常の処理が続行されます。 また、512,000バイトを超えた場合も URI が書き換わるだけで、ポリシー自体がエラーを出すわけではありません。

コメント