問題タブ [uri-fragment]

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 に答える
2517 参照

android - WebView URLで名前付きアンカーにスクロールするには?

Android の WebView の特定の名前付きアンカーでローカルに保存されたページを開くと、互換性の問題が発生します。現在、私は単に使用しています

これは私の 4.1 デバイスでは正常に動作しますが、他のデバイスのユーザーは動作しないと不満を漏らし続けています。

たとえば、4.0.3では、 URL フラグメント 部分なしでページを#fragment開くと正常に開きますが、ユーザーは「Web ページが利用できません」というエラーを受け取ります。

loadUrl(String)また、メソッドへの2回の呼び出しでフラグメントを開こうとしました。最初はフラグメントなしで、次にフラグメントを使用しました。また、JavaScript を使用してページの場所を変更します。

これ以上何を試すことができますか?

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

gwt - SAML トークン認証の一部として失われた URL フラグメント。回避策/標準パターン?

いくつかの Web アプリケーション認証プロトコル (WS-Federation や SAML プロトコル、いわゆる「パッシブ」プロトコル、および明らかに ASP.NET フォーム認証も同様です。この StackOverflow questionを参照してください。AppEngine は、この GWT バグ コメントを参照してください)元の「URL フラグメント」、つまり # 記号の後の部分。

おおよそ次のようになります: クリーンなブラウザー (キャッシュされた情報/クッキー/ログイン情報はありません) で、URL (1) http://example.com/myapp/somepage?some=parameter#somewhereを開きます。これにより、ブラウザー リクエスト (2) http://example.com/myapp/somepage?some=parameterが作成され、サーバーが ID プロバイダー (認証リクエストに URL (2) を含む) にリダイレクトし、最終的にリダイレクトされます。元の場所に戻ります。これは URL (2) です。サーバーが認識している唯一の URL です。しかし、私は URL (1) に行きたかったのですが、URL フラグメント (「アンカー」) は途中で失われてしまいました。実際には、最初のステップですでにです。

サーバーは URL フラグメントをまったく認識しないため、これはこれらのプロトコルの根本的な制限のようです。

(1) に移動すると、ブラウザーがサーバーから (2) を要求する仕様によると、SAML プロトコル、WS-Federation などでこのフラグメント損失制限が発生することがわかっています。この制限を回避できますか?

明らかな回避策は、この回答で提案されているように、URL フラグメントを避けることです。ただし、特定の Web アプリケーションの場合は、シングルページ GWT アプリケーションでブックマーク可能な URL フラグメントを使用して、アプリケーション内のナビゲーションによってページがリロードされないようにするため、適切ではありません。

私の質問: この状況には、他にどのような回避策または標準パターンがありますか?

(特に GWT + SAML プロトコル ソリューションに興味があります。)

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

apache - # (番号記号、ハッシュ、フラグメント) を含むリクエスト文字列 URL を apache/httpd カスタム アクセス ログに記録しますか?

仮想ホストでは、CustomLogmod_log_configを使用してHTTP リクエストをログに記録します。

問題は、URL に(番​​号記号)がある場合、クエリ文字列全体がログに記録されないことです(Visiting results in whichは省略されています)。#domain.tld/slug/foo^bar#baz"GET /slug/foo%5ebar HTTP/1.1"#baz

#URL 内の文字が文字列内のその時点までしかログに記録されない理由はありますか? これに関するドキュメント、またはこれを回避する方法はありますか?

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

jetty - Jetty 9 は URI フラグメントを削除します

のセキュリティ制約で保護したい WebApplication がありweb.xmlます。

ここで loginConfig からweb.xml

そして、ここにセキュリティ上の制約があります:

login.htmlこれは正常に機能し、自分自身を適切に認証できる必要なサイトにリダイレクトされます。login.html は次のようになります。

私の問題は、元の URL に使用した URI フラグメントがログイン サイトに転送されるが、認証後に元のサイトに戻されないことです。そのため、WebApp でチェックインしたいすべてのフラグメントとパラメーターを失います。

URI フラグメントが削除される理由を知っている人はいますか?

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

html - CSS セレクタ フラグメントのサポート

URL のフラグメント(またはハッシュ) は、ドキュメント内の特定のフラグメントを指定するために広く使用されています。

たとえば、以下のフラグメント

通常、<div id="<fragment>" />または<a name="<fragment>" />HTML ドキュメント内のようなものを参照します。

次のように、フラグメントとして CSS セレクターをサポートする標準があります。

それを使用するアプリケーションはありますか?ブラウザがそれをサポートするのはいいことですか?たとえば、ブラウザはページの選択されたフラグメントのみを表示したり、選択されたフラグメントを強調表示したりできます。または、選択したフラグメントを CSS または JS で強調表示するオプションを開発者に提供します。誰かが機能要求として関連するブラウザ開発者に提出できますか?

HTML ページ内の特定のコンテンツを参照する他の方法は何ですか? たとえば、HTML ページの特定の要素についてコメントしたい場合、できれば URI やその他の便利な識別子を使用して、ドキュメント内のその位置を指定する他の方法はありますか?

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

url - フラグメントに移動すると URL が予期せず変更される

次のような URL があります。

localhost:8080/some-resource/id

そして、次のようなリンク:

このリンクをクリックすると、次のような URL になると予想していました。

localhost:8080/some-resource/id#my-section

しかし、代わりに私は得ています:

localhost:8080/#my-section

これは予想される動作ですか?(ちなみにReactJSを使っています)

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

nginx - nginx で URL のエスケープされていない # を修正する

悪い HTTP クライアントはハッシュ記号をエスケープせず、次のように nginx に送信しています。

それ以外の:

#nginxはproxy_passディレクティブの の後のテキストを削除するため、これにより nginx の構成が壊れます。ハッシュ記号をエスケープするにはどうすればよいですか?

  • 使用return 200 "$request_uri";すると、nginxがそれを読んでいることがわかりますので、可能のようです。ただし、Nginx はlocationブロック単位で無視するため、実際には何とも一致しません。
  • 以下のコードを使用して、Python でエスケープされていない HTTP GET 要求を送信できます。

    /li>