チケット システムと統合するための API を提供するために自己ホスト型の ServiceStack を使用しており、次のルートを定義しています。
Routes
.Add<TicketsWithStatus>("tickets/{Status}")
.Add<TicketStatusCounts>("tickets");
ステータスにスペースが含まれている場合、最初のルートで URL エンコードの問題が発生します。参照するhttp://myservicebase/json/syncreply/TicketsWithStatus?Status=On%20Hold
と、期待どおりの応答が得られます。ただし、RESTful ルートを使用すると、http://mysevicebase/tickets/On%20Hold
結果が得られません。
アプリケーションをデバッグすると、呼び出しの場合はOn%20Hold
URL がデコードされていることがわかりますが、RESTful ルートを使用している場合はデコードされません。On Hold
json/syncreply
RESTful ルート経由でサービスを呼び出すときに、ステータス プロパティが適切にデコードされるようにするにはどうすればよいですか?