cari

Rumah  >  Soal Jawab  >  teks badan

javascript - Bagaimana untuk mendapatkan parameter apabila terdapat tanda # dalam URL? nodejs

Sebagai contohhttps://beta.biaoqing.com/callback/qq/?#access_token=CF0C8D1CDFEE38425CDB8A719080A153&expires_in=7776000
我在nodejs中用var access_token=req.query.access_token;tidak dapat akses_token

世界只因有你世界只因有你2819 hari yang lalu1248

membalas semua(3)saya akan balas

  • 仅有的幸福

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

    Tidak dapat diperoleh, # ialah cincangan bahagian hadapan apabila menghantar permintaan, kandungan selepas cincang tidak akan dihantar ke URL saya tidak mengenali anda.

    balas
    0
  • 黄舟

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

    Ajar anda kaedah istimewa:

    const querystring = require('querystring');
    let str = 'https://beta.biaoqing.com/callback/qq/#access_token=CF0C8D1CDFEE38425CDB8A719080A153&expires_in=7776000';
    
    let r = querystring.parse(str);
    console.log(r);
    
    for(value in r){
        console.log('key: ', value);
        console.log('value: ', r[value]);
    }

    Ia dianggap oportunistik.
    Kaedah Object.values() dalam es6 boleh menggantikan kaedah di atas untuk dalam, tetapi ia hanya serasi dengan versi nod v7.x.

    ----------------------- Pemisah----------------------- - -------

    Tingkatkan kaedah di atas: alih keluar simbol # dan ia akan menjadi OK.

    const querystring = require('querystring');
    const url = require('url');
    
    let str = 'https://beta.biaoqing.com/callback/qq/?#access_token=CF0C8D1CDFEE38425CDB8A719080A153&expires_in=7776000';
    let str2 = str.replace(/\#/g,'');//去掉 # 符号
    let obj_query = querystring.parse(url.parse(str2).query); // 解析URL的 query 部分
    console.log(obj_query.access_token);
    
    

    balas
    0
  • 迷茫

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

    Ini ialah halaman pendaratan sandaran pihak ketiga yang dibenarkan, bukan?

    Hujung hadapan halaman pendaratan ini boleh mendapatkan kandungan di belakang cincang, jadi logiknya boleh seperti berikut:

    Pengguna melompat dari tapak web anda ke kebenaran pihak ketiga-> Keizinan pihak ketiga berjaya melompat ke pratetap halaman pendaratan panggilan balik pada tapak web anda-> Page js mengalih keluar parameter dalam cincang dan menghantar permintaan tak segerak ke antara muka yang ditetapkan di bahagian belakang -> ajax mengembalikan kejayaan, kawalan js melompat ->

    Dalam erti kata lain, halaman pendaratan yang dikembalikan dalam langkah pertama ialah halaman transit Tujuannya adalah untuk menggunakan js untuk mengalih keluar kandungan yang dicincang dan menghantarnya kembali ke bahagian belakang dengan ajax pihak ketiga dan kemudian js Kawal lompatan dengan segera. Adalah lebih baik untuk menambah beberapa UI pada halaman pemindahan ini, seperti gesaan seperti melompat, yang benar-benar boleh diterima dari segi pengalaman pengguna.

    balas
    0
  • Batalbalas