検索

ホームページ  >  に質問  >  本文

javascript - URL に # 記号がある場合にパラメータを取得するにはどうすればよいですか?ノードjs

https://beta.biaoqing.com/callback/qq/?#access_token=CF0C8D1CDFEE38425CDB8A719080A153&expires_in=7776000
nodejsでvar access_token=req.queryを使用します。 ;access_tokenを取得できません

世界只因有你世界只因有你2819日前1249

全員に返信(3)返信します

  • 仅有的幸福

    仅有的幸福2017-05-24 11:40:59

    取得できません。# はリクエストを送信するときに、その後のハッシュが URL に送信されません。なぜ最後に #

    があるのですか?

    返事
    0
  • 黄舟

    黄舟2017-05-24 11:40:59

    特別な方法を教えます:

    リーリー

    それはご都合主義だと考えられます。
    es6 の Object.values() メソッドは、上記の in メソッドを置き換えることができますが、ノード v7.x バージョンとのみ互換性があります。

    ---------------------------セパレータ----------------------- - -----

    上記の方法を改善します。# 記号を削除すればOKです。

    リーリー

    返事
    0
  • 迷茫

    迷茫2017-05-24 11:40:59

    これはサードパーティによって承認されたフォールバック ランディング ページですよね?

    このランディング ページのフロントエンドはハッシュの背後にあるコンテンツを取得できるため、ロジックは次のようになります:

    ユーザーが Web サイトからサードパーティの認証にジャンプします -> サードパーティの認証が Web サイトに事前設定されているコールバック ランディング ページに正常にジャンプします -> コールバック ランディング ページのハッシュには、access_token とその他のパラメータが含まれています -> js が取得されます ハッシュ内のパラメーターを使用してバックエンドに設定されたインターフェイスに非同期リクエストを送信します -> ajax が成功を返し、js がジャンプを制御します -> ブラウザーは実際のユーザー対話型承認成功ページに移動します

    つまり、最初のステップで返されるランディング ページは、バックエンドがサードパーティによって承認されたトークンを取得した後、js を使用してハッシュされたコンテンツを削除し、バックエンドに送り返すことです。 , js はジャンプの変更を即座に制御します。この転送ページには、ジャンプなどのプロンプトなど、ユーザー エクスペリエンスの観点から絶対に許容できる UI を追加するのが最善です。

    返事
    0
  • キャンセル返事