0

POC 安らかなサービス プロジェクトにボトルを使用しています。呼び出し元が JSON、XML、または HTML で応答を送信することを望んでいるかどうかを判断する最善の方法を教えてください。request.mimetypes.best_match を使用してこの例をいくつか見ましたが、フラスコをインポートする必要があります。ボトル自体でこれを行う方法はありますか?どうもありがとう、レザ

4

2 に答える 2

0

RequestMime-type (または content-type) は、サーバーに送信されるコンテンツのタイプです。これは、サーバーによって返される必要があるのと同じタイプであるという意味ではありません。

クライアントは、サーバーの種類がどうなるかを知っている必要がありますResponse。それ以外の場合はそうではありません。サーバーは、クライアントが必要とする応答を「推測」してはなりません。

于 2013-07-24T11:25:08.493 に答える
0

クライアントが希望する応答形式を伝えるために使用できるクエリ引数を追加することを検討してください。

たとえば、リクエストが現在次のようになっているとします。

http://myservice.com/get-item/id/190134

次に、次のいずれかに変更します。

http://myservice.com/get-item/id/190134?response_format=json
http://myservice.com/get-item/id/190134?response_format=xml
http://myservice.com/get-item/id/190134?response_format=html

サーバーコードでbottle.request.params.get('response_format', 'json')は、目的の応答形式が得られます (ここでは「json」がデフォルトであると仮定します)。

PS、「response_format」の予期しない値に対して防御的にコーディングし、それに応じて設定することを忘れないでbottle.response.content_typeください。

于 2013-07-24T15:54:34.330 に答える