問題タブ [edge-side-includes]

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 投票する
0 に答える
1127 参照

http - エッジサイド-nginx用のモジュールが含まれていますか?

nginxのESI1.0実装について知っている人はいますか?

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

xml-parsing - 非 XML ファイル内の XML チャンクの解析

非 XML ファイルに埋め込まれた XML チャンクの解析に関する経験を共有できる人はいますか?

Edge-Side-Includes[1] プロセッサを実装しています。Edge-Side-Includes 要素は必ずしも XML または整形式の XML ファイルに埋め込まれているとは限らず、このような要素を見つけて解析するにはどうすればよいかという問題が生じます。

誰かが似たようなことをしましたか?

[1] http://www.w3.org/TR/esi-lang

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

varnish - 大量の小さな情報のためにESIにニスを塗る

投稿と、それらの投稿をお気に入りに追加できるユーザーを備えた標準のブログタイプのアプリケーションがあります。

目標

  1. ユーザーが投稿のリストを見ると、各投稿がお気に入りかどうかの表示(画像)が表示されます。匿名ユーザーにはお気に入りがありません。
  2. 投稿のリストは、計算に費用がかかるため、Varnishにキャッシュする必要があります(匿名ユーザーとログインユーザーの両方)。

アイデア

リストページをVarnishにキャッシュし、ESIを使用してお気に入り情報を取得します...

  1. ...現在のリクエストを行っているユーザーの投稿ごと。欠点:1ページあたり50のESIリクエスト(基本的にN + 1の問題)。
  2. ...ページに保存されるJSONオブジェクトとして。クライアントでは、このオブジェクトが読み取られ、DOMが操作されてお気に入り情報が示されます。欠点:Javascriptがないユーザーには機能しません。
  3. ...ページに保存されるCSSスニペットとして。CSSは、各投稿に何を表示するかを決定します。欠点:スタイル設定可能なコンテンツ(つまり、画像)に対してのみ機能します。テキスト情報を表示することはできません。

私が望むことを達成するための可能性を逃していますか?アイデア3は最も賢い答えのようですが、ユーザーが投稿をお気に入りに追加した日付も表示したい場合は機能しません。

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

akamai - esi:include または esi:eval ステートメントの結果を esi 変数に格納できますか?

ESI include または eval ブロッ​​クの結果を ESI 変数に格納したいと考えています。インクルードの内容は私の管理外です。その形式は JSON です。以下のすべてを試してみましたが、役に立ちませんでした。変数は空の文字列になります。

私がテストしている ESI サーバーは Akamai の ETS です。

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

html - ネットワークパス参照付き

ネットワーク パス参照<esi:include src="url" />を使用して を実行できないことがわかりました。インクルードでエラーを返します。

プロトコル/スキームを省略した絶対 URL を含めることは可能ですか?

呼び出しページのプロトコル/スキームに応じて、httpまたはhttps経由でページを含める必要があります

(したがって、http://example.com/containerに含める場合は http://example.com/included を含めhttps://example.com/containerに含める場合は https://example.com/included を含めます.com/コンテナ)

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

reactjs - ユニバーサル React アプリケーションに含まれるエッジ側に相当するもの

ユニバーサル React アプリケーションがあります。ページの 1 つに別のサーバーからの HTML を含めたい -エッジ サイド インクルード(ESI) について言及されていますが、この方法論は Universal React アプリケーションと互換性がないようです。

  1. クライアント側を含む Edge 側の機能を再作成することはできません。少なくとも外部 URL をブラウザに公開する必要があります。これを行うためにサーバー上にプロキシ ページを作成し、このクライアント側を実行するときに AJAX 経由で html スニペットを読み込むことができると思いますが、それでも 2 番目の問題が残ります...
  2. ESI を使用するということは、CDN サーバーで処理するときに、React アプリケーションの既に (サーバー側で) レンダリングされた DOM に非 React DOM コンテンツを挿入することを意味します。これにより data-react-checksum が無効になると確信しており、これを回避する方法は考えられません。

使用できる代替の React フレンドリーなユニバーサル レンダリング アプローチはありますか?