Допустимые параметры запроса - передача данных в URL - PullRequest
0 голосов
/ 23 ноября 2018

Каждый раз, когда мне нужно было указать параметры запроса в URL, я всегда использовал http://example.com?something=value&else=value.

Однако недавно мне нужно было преобразовать объект JSON в параметр запроса в URL, чтобы он выглядел следующим образом key=value&key2=value2 для передачи в URL, и мой коллега спросил меня, зачем мне использовать такую ​​технику для преобразования объектав URL, вместо того, чтобы один и тот же объект JSON подвергался строковому форматированию и вставлялся в URL напрямую, как показано ниже: http://example.com?data='{"key":"value", "key2:"value2"}'

Хотя предложение моего коллеги выглядит для меня очень некрасиво, я не смог бы дать ему ответ болеебольшинство веб-сайтов передают параметры, используя http://example.com?something=value. практикуясь над его рекомендациями.

, если я использую технику параметров запроса ?key=value, я могу воспользоваться встроенными функциями Javascript, такими как URLSearchParams, для использования данных, передаваемых в URL.

По рекомендации моего коллеги я мог просто преобразовать строку обратно в объект и запросить URL-адрес с функциями, обнаруженными в объектах.

Каковы недостатки каждого метода и почему я должениспользовать один над другим?

1 Ответ

0 голосов
/ 23 ноября 2018

Когда вы передаете конфиденциальные данные, вы можете кодировать данные в base64 и передавать на другом конце декодировать данные, при этом ваши данные будут в безопасности

например,

let inBase64=btoa(JSON.stringify({name:'tom'}))
let url=`http://example.com?data=${inBase64}`

onдругой конец, чтобы преобразовать его обратно

let jsonData=JSON.parse(atob(data))

Для конфиденциальных данных это не очень хороший способ, а также url limit

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