Передайте чистую переменную cookie в Javascript / Vue JS - PullRequest
0 голосов
/ 11 июня 2018

Мой сценарий таков.

У меня есть следующая переменная:

_s.$cookie.set('videoURL', this.sample_url)

Теперь, когда я посмотрел на инструменты Chrome dev в Application -> Cookies, это то, что я вижу.

enter image description here

Как видите, между URL-адресами есть специальные символы, которые, вероятно, заменяют "/".

Как вы очищаете это так, что передает чистый URL (например, http://helloworld.com)?

ОБНОВЛЕНИЕ:

После первого ответа ниже, я пересмотрел свой код. Однакотакие же специальные символы все еще существуют.

мой код теперь выглядит следующим образом. Я использую Vue JS.

  urlEncoded = encodeURIComponent('http://helloworld.com')
  decodeURL = decodeURIComponent(urlEncoded)
  _s.$cookie.set('videoURL', decodeURL)

UPDATE 2

После передачи переменной cookie впеременная класса, наконец увидел, что URL теперь очищен от специальных символов.

  _s.videoURL = _s.$cookie.get('videoURL')
  console.log(_s.videoURL)

1 Ответ

0 голосов
/ 11 июня 2018

Вы не можете сохранить его как чистый URL-адрес , поскольку в нем есть символы, которые не допускаются в файле cookie.


Опция кодировать / декодировать значение при записи / чтении файла cookie

var url = "http://helloworld.com"
var url_encoded = encodeURIComponent(url)

console.log(url_encoded)

console.log(decodeURIComponent(url_encoded))

Обновлено после редактирования вопроса, используется Vue JS.

Вот два дополнения для Vue, которые могут решить его для вас


И, как прокомментировано, для кэширования URL видео на разных страницах сайта, localStorage можетбыть более подходящим.

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