2015-02-25 2 views
0

Я пытаюсь использовать localStorage и для этого я отправить один раз в json файл клиенту, и делать всю логику, используя этот файл, но, поскольку он показывает в html, я использовал этот трюк:Удалить элемент из HTML-файла?

<script id="scr"> 
    var object = {value: {{ json_encode(temps) }} }; 
    localStorage.setItem("temps", JSON.stringify(object)); 
</script> 
.... 
some html 
.... 
<script> 
$("#scr").remove(); 
</script> 

json удаляется, но нет, если я делаю «show page source»,

Так как я могу скрыть файл json, выполнив только один запрос на сервер?

+1

Объект «источник просмотра» показывает, как выглядела страница, когда она была загружена. Вы не можете это контролировать. – Pointy

+0

так что только ajax с множеством запросов или создание localstorage с использованием того, что уже находится в html? – Abdelouahab

ответ

2

Если вы пытаетесь убедиться, что пользователь не может видеть JSON, вы не можете отправить его пользователю и сохранить его в localStorage, если у пользователя нет доступа к нему, если он захочет.

Но чтобы убедиться, что он не отображается в источнике html, вы всегда можете отправить запрос AJAX на сервер, который получает JSON, а затем сохраняет его в localStorage. Таким образом, он не появится в источнике.

Но, как я уже сказал, если вы хотите получить доступ к нему на JavaScript-стороне вашего клиента, пользователь всегда может получить к нему доступ, если захочет. Поэтому это не рекомендуется, если данные JSON чувствительны.

+0

Как насчет сохранения в localStorage после отображения элемента, поэтому он будет доступен после того, как сервер отобразит html, потому что вначале я планировал отправить json, а затем извлекал из него информацию. – Abdelouahab

+0

@ Abdelouahab Я действительно не понимаю, что вы подразумеваете под этим. То, что вы делаете, похоже, работает, но нет способа убедиться, что он не отображается в источнике, за исключением загрузки его через AJAX. – lshas

+0

Я имею в виду, что в прошлом я хотел сохранить json, а затем построить html из этого json-файла, но теперь, я сделаю инверсию, я буду строить html, а затем из этого html, я сделаю localstorage – Abdelouahab

1

Я думаю, что вы не можете скрыть div, все браузеры предоставят исходный код и расскажите, как браузер интерпретирует его шаг за шагом. И localStorage видна всегда, вы не можете его скрыть enter image description here

+0

Да, есть также вкладка 'ressources' от chrome dev, но поскольку данные не были разумными, я просто скрывал их от новичка, продвинутые пользователи всегда получат возможность к нему, так как это обычный http ... – Abdelouahab

Смежные вопросы