RESTfulなWebサービスのためにスキーマを用意しています。私は、次のスキーマを持っている場合を想像:ペイロードのJSONスキーマが受け入れられたオブジェクトと返されたオブジェクト
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"required": ["name"],
"properties": {
"name": {
"type": "string"
},
"urn": {
"type": "string"
}
}
}
URNが私のサービスによって生成されているので、私はクライアントの要求にそれを受け入れることを望んでいません。したがってurn
はrequired
アレイに含まれていません。しかし、レスポンスでは必須なので、このスキーマを使用して私のサービスが提供するレスポンスを検証することはできません。私は2つの異なるスキーマを使用する必要がなく、それらを同期させておく必要があります。
両方のケースを厳密にモデル化するために単一のスキーマを使用する方法はありますか?または、2つのスキーマを使用する必要がある場合は、共通のスキーマを参照して、要求と応答スキーマのrequired
フィールドをオーバーライドする方法がありますか? http://json-schema.org/example2.html
も、このディスカッションスレッド:
それは理想的ではありませんが、確かにそれで動作すると思います。ありがとう! – Dathan