問題タブ [content-negotiation]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
906 参照

xml - SpringMVC3のxmlに関する問題

次の4つの簡単な例を参照してください。2つはxmlで機能し、他の2つは機能しません。




xmlを生成できない2つの例では、Springを構成してそれを機能させることは可能ですか?

0 投票する
1 に答える
208 参照

http - HTTP POST サービスで許可されているコンテンツ タイプを確認するにはどうすればよいですか?

私はOpenTox webservicesのクライアントを作成していますが、それらが提供するいくつかのサービスは、特定の MIME タイプをオプションでサポートしています。そのため、実行中の特定のサービスでサポートされているコンテンツ タイプを動的に検出する必要があります...

現在、GET サービスの場合は「Accepts」HTTP ヘッダーを使用でき、コンテンツを POST するときは「Content-type」を使用して、送信する形式を設定できます。データセットが大きくなる可能性があります。したがって、使用できる最適な MIME タイプを前もって知りたいと思っています。

POST サービスでコンテンツ ネゴシエーションを実行するにはどうすればよいですか? 私はApache HttpClientを使用していますが、それは答えにとって重要ではありません。

0 投票する
1 に答える
609 参照

design-patterns - GUI、BLL、またはDTOでのJSON / XML出力?

私はコンテントネゴシエーションを使用しているので、リクエストのヘッダーに応じてJSON/XML出力を提供します。今、私はこの機能を提供するのに最適な場所はどこか疑問に思いました。

情報:BLL=ビジネスロジック層
DTO=データ転送オブジェクト
DAL=データアクセス層

DTOの擬似コードの例

BLLの擬似コードの例

1)BLLオブジェクトを使用するGUIの場合:BLLからのDTO結果をJSON / XMLに変換します
2)BLLの場合:次のようなもの... getObjectJSON()-> DTO入力をJSON形式に変換して返します
3) DTOの場合:toJSON()toXML()toString()のような動作
4)または1つのプロパティ(json / xml)のみを持つ追加のDTO
5)他に何かありますか?..。

*個人的には、(1)ロジックをGUIから除外する理由で間違っていると思います。(4)WebJsonExampleDTOやWebXmlExampleDTOのよ​​うな追加のDTOを1つのプロパティだけで使用するのはやり過ぎのようです。

0 投票する
2 に答える
656 参照

json - コンテンツネゴシエーションを無効にして、常にWCFデータサービスからJSONを返す方法は?

ノースウィンドデータベースがあり、データベース内のテーブルから自動的に生成するADO.NETエンティティデータモデルを使用しているとします。次に、DataServiceから継承する新しいWCFデータサービスを追加します。サービスを実行するWebアプリケーションを起動すると、次のようなデータを要求できます: http://machine/Northwind.svc/Orders

これにより、注文テーブルからすべての注文がatom/xml形式で返されます。問題は、XMLが必要ないことです。JSONが欲しいです。アプリケーションであらゆる種類の設定(web.config)と属性を試したと思いますが、それでもXMLを取得できます。何があっても。Fiddlerを使用し、リクエストヘッダーを変更してJSONを受け入れる場合にのみ、JSONを取得できます。

私はコンテントネゴシエーションの概念が好きではありません。常にJSON形式でデータを返したいです。どうすればそれを達成できますか?

モデルオブジェクトは作成しなかったことを覚えておいてください。モデルオブジェクトは、データベーステーブルとリレーションシップに基づいて自動的に作成されます。

0 投票する
0 に答える
492 参照

.htaccess - コンテンツ ネゴシエーションに htaccess を使用するには?

同じリンクからコンテンツを利用できるようにするには、ファイルの拡張子が変わっても URI を変えるべきではありません。そこで、コンテンツ ネゴシエーションと htaccess を使用してこれを実現することにしました。私はウェブを検索しましたが、私が見つけたのは、これをphpに固有に実装する方法だけです。私のサイトには、phpだけでなく、html、画像、javascriptファイルもあります。htaccess だけでコンテンツ ネゴシエーションを使用するにはどうすればよいですか?

0 投票する
2 に答える
2354 参照

java - Spring-MVC ContentNegotiatingViewResolver のセットアップは正しく行われていますか? サポートされていないメディア タイプの 404 エラーを送信するにはどうすればよいですか?

これがこのサイトにとって有効な質問かどうかはわかりませんが、ContentNegotiatingViewResolver の経験がある人がこれを調べて、正しく設定したかどうかを知らせ、404 メッセージの送信を手伝ってくれるかどうか疑問に思っていました.

私がやりたいことは、拡張子のないすべての URL をデフォルトで HTML 表現にすることです (私の場合は freemarker ビューです)。「.json」が追加された URL を受け入れて、代わりに json をレンダリングしたいと思います。これは、Firefox、つまり Chrome で動作するようです。他のブラウザでは動作すると思いますか?ドキュメントに記載されているように実際には機能しない邪悪な機能であるため、acceptヘッダーを無効にするようにしました。

「.stuff」を使用して URL にアクセスしようとしましたが、何が起こるかを確認しただけで、私の構成では空白の画面が表示されます。これは受け入れられますか?404 エラーを送信する方法はありますか?

正しく構成されていない可能性があるものは他にありますか?

0 投票する
1 に答える
886 参照

rest - Grailsのコンテントネゴシエーションは反対のタイプをどのように処理しますか?

Grailsは、次の3つの異なるソースからのコンテンツネゴシエーションをサポートしています。

  1. ヘッダーを受け入れる
  2. リクエストパラメータ(フォーマット)
  3. URI拡張

問題は、複数の場所からコンテンツ情報を取得する場合、特にそれらが互いに同意しない場合、それは何をするのかということです。

たとえば、Grailsが次のようなリクエストを受け取った場合はどうなりますか。

Acceptヘッダーはxmlに解決され、URI拡張はhtmlに解決され、パラメーターはjsonに解決されます。

これは何をしますか:

0 投票する
2 に答える
299 参照

grails - Grails でコンテンツ ネゴシエーション応答を行う簡単な方法はありますか?

Grails ユーザー ガイドに記載されている内容から、コンテンツ ネゴシエーションに基づいてさまざまなコンテンツ形式を送信するための推奨される方法withFormatは、ブロックを使用することです。

ただし、これを行うには、すべてのコントローラーメソッドの応答が必要です。withFormatコンテンツを返すすべてのアクションの最後にブロックを単にコピーして貼り付けるよりも、この動作を取得するためのより良い方法はありますか?

0 投票する
3 に答える
496 参照

security - Spring MVC 3のコンテンツネゴシエーションは、それをサポートするアクションに制限されます

SpringMVC3アプリでコンテンツネゴシエーションを次のように構成しました。

これは非常にうまく機能します。すべてのビューは、「通常の」ビューテンプレートを使用したhtmlビューとして、または「Accept」ヘッダーに応じてビューモデルデータのJSONまたはXMLダンプとしてレンダリングされます。

しかし、これは私にはちょっとしたセキュリティホールのようです。私のアクションのいくつかはAPIスタイルのアクションであり、HTML、JSON、またはXMLで合法的に利用できます。ただし、一部のビューはHTMLのみを対象としています。URLに「.json」を追加するだけでエンドユーザーがすべてのビューデータを表示できるようにしたくはありません。

Spring MVCでコンテンツネゴシエーションを行う方法はありますが、明示的にオプトインしているアクションに対してのみです。次のようなコントローラーアノテーションを設定できます@RespondsTo("xml", "json")か?

0 投票する
1 に答える
313 参照

apache - タイプマップファイルとして.jarを使用する

'.jar"-ファイルをタイプマップファイルとして使用する方法が本当に必要です。標準の".var"-コンテントネゴシエーションを使用するファイルではありません。

さて、これは私の構成です:

...うまく機能し、期待どおりにサブフォルダーから配信しますfoo.var

ファイルの名前foo.varfoo.jarに変更したり、構成をに変更したりしてAddHandler type-map .jarも機能しません。これfoo.jarにより、ルートディレクトリからすぐにが配信されます。