JavaScriptリクエスト

必要なのは、JavaScriptにパラメーターを直接渡すことです。

GET、POSTを介してパラメーターを渡すことはできますが、これらのパラメーターを渡すと、新しいページが単にロードされます。 ブラウザのキャッシュがある場合



some.so/index.php?id=2



そして私たちは要求します



some.so/index.php?id=3



サーバーは新しいページを生成し、キャッシュからsome.so/index.php?id=2を取得しません(そして正しく実行します)。



状況はPOSTでも同じです。つまり、GETメソッドとPOSTメソッドを使用してJavascriptにパラメーターを渡すことができますが、これは完全に真実ではありません。 なぜなら パラメータがサーバーに転送され、そこで新しいコンテンツが生成され、そこで何でもできます。 window.location.hrefから直接GET変数を取得しますが、少なくとも何らかの形でサーバー言語は毎回JavaScriptを再生成します。 これはJavaScriptリクエストの単なる模倣です。



ただし、URL標準には1つの文字が役立ちます。







これはポンド記号(#)ですが、英語の通貨の記号であると言う人もいますが、今では重要ではありません。



秘Theは、キャッシュが



some.so/index.php#id:2



そして私たちは要求します



some.so/index.php#idhaps



次に、2番目のページがキャッシュから取得されます(最初の要求後に取得されます)。



それでは、ビジネスに取り掛かりましょう。URLのポンド記号の後に、文字が許可されます

:_-。

およびラテン文字。



ペア(キー:値)をドットで区切ってください。 キー自体はコロンで値と区切られ、エスケープはアンダースコアを使用して行われます。



したがって、2つのパラメーターを渡す場合、次のようになります。



some.so/index.php#id:2.par2:dgsdgd



ピリオド、コロン、または非ラテン文字を渡したい場合、次のようにします。



some.so/index.php#id:_56_34.par2:_21_20_54



このようなJavaScriptリクエスト(jR = JavaScriptリクエスト)は、#の後にコロン(:)が存在することで、通常のsome.so/index.php#chapter7リンクと区別できます。 私は誰もそこにコロンを置くのを見たことがありません。



jRによって処理されるjs関数を記述することは難しくありません。window.location.hrefを取得し、regexpで切り取り、文字列を配列に分割し、配列要素をキーと値に分割します。 以上です。



それは本当に機能し、トラフィックを本当に節約し、AJAXで楽しい効果を与えます。一般的には実験です。



もちろん、TBLはこの使用法にはあまり満足していませんが、それでも、クライアント側のJavaScriptは、それ自体で直接パラメーターを受け取ることができるという事実を獲得したと思います。 やった!



All Articles