問題タブ [http-accept-header]
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.
scala - スプレー ルーティング: さまざまなコンテンツ タイプに対応するには?
Accept
スプレーでは、指定されたヘッダーに応じて、さまざまなコンテンツ タイプで応答したいと考えています。rompetroll による質問でいくつかの提案を見てきましたが、それを行うための標準的な方法があるかどうかを知りたいです (つまり、単純または既に実装されています)。
本質的に、私が想像することは次のようなものです。
前もって感謝します。
api - 単一のアイテムとアイテムのコレクションを返すためのメディア タイプ
単一の製品または製品のコレクションを返す API を開発しているため、http ://api.company.com/products/やhttp://api.company.com/products/1/などのエンドポイントがあります。次の構造でデータを返します。
現在、Accept ヘッダーで次のメディア タイプをそれぞれ使用しています。
"product"
と を使用して 2 つのメディア タイプを使用することは理想的ではないように思われます"products"
が、混乱を招くことがわかりますが、それらは異なるデータ構造を返します。だから、両方に1つのメディアタイプのみを使用するかどうかを決定するAPI標準がここにあるかどうか疑問に思っていますか?
jquery - JQuery AJAX GET (JSONP 経由) リクエストに Accept ヘッダーを追加する
"jsonp" を使用する jQuery AJAX GET リクエストに Accept ヘッダーを追加しようとしていますdataType
が、何らかの理由で機能しません。これまでの私のコードは次のとおりです。
複数のことを試しましたが、何も機能していないようです。jQueryサイトのドキュメントを見ましたが、適切な例が見つかりません。
これは、リクエストヘッダーに対して得られるものです。Accept ヘッダーを「application/json」にする必要があります。
どんな助けでも素晴らしいでしょう。ありがとう!
nginx - nginxで受け入れヘッドに基づいて書き換える方法
私は最近nginxに切り替えましたが、かなり新しいので、これが以前に広範にカバーされていた場合はご容赦ください.
私がやろうとしているのは、送信された受け入れヘッダーに基づいてユーザー要求を書き直すことです。
具体的には、accpet ヘッダーが image/gif または image/webp の場合は画像を提供し、そうでない場合は URL の .gif を連結して提供します。
私のApache構成を聞いていますが、再びnginxを使用していて、それを変換する方法を学ぼうとしています:
ご覧のとおり、上記の htaccess ファイルは魅力的に機能しますが、nginx は完全に異なっているようです。
私はいくつかの読書をして、これを思いつきました:
サーバーブロック内で次のように
悲しいことに、これは機能せず、nginx でのトラブルシューティングの方法もまだわかりません。
どんな情報でも大歓迎です、ありがとう。
json - REST での HTML アプリケーション ページと JSON データの提供
RESTful アプリケーションでは、「リソース」URL を使用して JSON データとデータにアクセスするページの両方を提供することは良い考えですか? そうでない場合、2つのことをどのように区別すればよいですか?
ページ/routes
があり、すべてのルートを一覧表示するページがあるとします。私はこれを行う必要があります:
HTML ページ
JSON レスポンス
2 つの要求が同じ URL/URI に対して行われているため、これは間違っているように見えますが、異なるリソースが返されます (1 つはアプリケーション ページで、もう 1 つはデータです)。次のようなものを提供する方が適切と思われますAccept: text/html
:
(あまり役に立たないので、おそらくやらないでしょう。)
私はいくつかのオプションについて考えました:
Accept
上記のように HTTP ヘッダーを使用します- クエリ パラメータを使用する (例:
/routes?type=html
) - ページに別のパスを使用する (例:
/routes
データ/pages/routes
用とアプリケーション用) - 拡張機能を使用する (例:
/routes
データ用および/routes.php
アプリケーション用)
1 と 2 はあまり正しくないようです。ページはそれ自体がリソースであり、アプリケーション内のエンティティを正確に表しているわけではありませんが、私は 3 にあまり熱心ではありません。オプション 4 は単純に醜く見えます。
主要なサイトが何をしているかを調べてみましたが、それらはすべて別のホスト/サブドメイン (例: facebook.com
/ graph.facebook.com
、twitter.com
/ api.twitter.com
) からデータを提供していますが、これは私にとって選択肢ではありません。
何か案は?この質問は主に意見に基づくものであってはならないので、参考にしていただければ幸いです。
web-services - GET リクエスト - パラメーターまたは Accept ヘッダーの目的の応答形式
データベースからデータをインポートおよびエクスポートするための ASP.Net Web API 2 RESTful Web サービスに取り組んでいます。私のエクスポート方法では、クライアントにはさまざまな形式 (pdf、xml など) でデータをエクスポートするためのオプションがいくつかあります。クライアントがデータを提供する形式をサービスに通知するためのインターフェイスの最適な設計を決定しようとしています。
私が知る限り、私の 2 つの最良のオプションは、Accept ヘッダーをメディア タイプ文字列と共に使用するか、クライアントがクエリ文字列でフォーマット パラメータを提供できるメソッドにパラメータを追加することです。Accept ヘッダーを使用することを選択した場合、これにはカスタム メディア タイプ文字列の使用が含まれる場合があります。
Accept ヘッダーを使用すると、HTTP 標準と RESTful プラクティスに沿ったものになるように思えますが、クエリ文字列で format パラメーターを使用すると、サービス側とクライアントでの実装が容易になります。
これら 2 つの設計の長所と短所を説明できる人はいますか?
javascript - ファイルをダウンロードするように window.location を設定する際の警告
ファイル ("/foo/bar") をダウンロードするように window.location を設定しています。これで、ダウンロードは google chrome で機能しますが、次の警告が表示されます。
これらは、Google Chrome に従って設定される応答ヘッダーです。
とにかくjs側でacceptヘッダーを設定してこの警告を省略することができるかどうかのアイデアはありますか?