вывести значение URL Параметры ha sh js - PullRequest
1 голос
/ 07 апреля 2020

Я пытаюсь получить параметры из URL, используя js У меня есть URL:

http://www.example.com?i=aGVsbG8gd29ybGQ=

Я хочу декодировать значение base64? I и печатать здесь значение декодирования используя javascript

<input id="i" type="hidden" value="decode value" />

Ответы [ 4 ]

0 голосов
/ 07 апреля 2020

Попробуйте:

var parameterValue = atob(window.location.search.match(/(\?|&)i\=([^&]*)/)[2])
console.log(parameterValue);//"hello world"
document.getElementById('i').value=parameterValue;

Это также может помочь: { ссылка }

0 голосов
/ 07 апреля 2020

Да, вы можете получить значение из URL и и декодировать его.

Используйте код ниже

function getUrlVars() {
    var vars = {};
    var parts = window.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi, function(m,key,value) {
        vars[key] = value;
    });
    return vars;
}
let x = atob(getUrlVars().i);
console.log(x); // hello world
document.getElementById('i').value = x;
0 голосов
/ 07 апреля 2020

Для анализа строк URL современные браузеры предоставляют класс с именем URLSearchParams, и это самый простой способ извлечь значения URL.

Вы можете создать экземпляр этого класса, передав ему свойство search window.location (после удаления начального «?»), и тогда он сделает всю работу за вас:

// eg. https://example.com/?name=Jonathan&age=18&i=aGVsbG8gd29ybGQ=
const params = new URLSearchParams(window.location.search.substring(1)); // remove "?"
const name = params.get("name"); // is the string "Jonathan"
const age = parseFloat(params.get("age")); // is the number 18
const i = whateverDecodingFunctionYouUse(params.get("i")); // decoded aGVsbG8gd29ybGQ

См .: https://developer.mozilla.org/en-US/docs/Web/API/URLSearchParams/

0 голосов
/ 07 апреля 2020

вы можете использовать window.location API https://developer.mozilla.org/en-US/docs/Web/API/Location

console.log(window.location.search);

В ответ вы получите? I = some-value

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...