przechowywanie danych w przeglądarce

0

Musze zapisać sobie dane odnośnie ceny z jednego widoku i wyświetlić te dane w drugim widoku. Nie bede wchodził w szczegóły ale inaczej tego nie da sie raczej zrobić.
Czy takie coś jest bezpieczne? Chodzi mi o to żeby użytkownik nie mógł w jakiś sposób zmienić te wartość ceny.

Drugie pytanie: Czy jest możliwe zapisać wartość zmiennej po stronie javascriptu we właściwości modelu widoku?

2
Mały Szczur napisał(a):

Musze zapisać sobie dane odnośnie ceny z jednego widoku i wyświetlić te dane w drugim widoku. Nie bede wchodził w szczegóły ale inaczej tego nie da sie raczej zrobić.
Czy takie coś jest bezpieczne? Chodzi mi o to żeby użytkownik nie mógł w jakiś sposób zmienić te wartość ceny.

Użytkownik może zmienić wszystko, co wysyła na serwer, to Ty masz zabezpieczyć aplikację tak, żeby takie działanie niczego nie zepsuły.

Drugie pytanie: Czy jest możliwe zapisać wartość zmiennej po stronie javascriptu we właściwości modelu widoku?

Tak, kod JS może ustawić wartość jakiegoś inputa, a input po wysłaniu formularza postem trafi na serwer jako część modelu widoku.

0

Czyli zapisanie na chwilę do pamięci przeglądarki należności do zapłaty, którą obciążę klienta nie jest dobrym pomysłem ?

1

Jeśli to będzie jedyne źródło informacji o tej należności, to to jest bardzo zły pomysł.

Jeśli to jakiś sklep internetowy, w którym użytkownik wybiera jakieś produkty, to wysyłasz ID tych produktów na serwer, tam liczysz należność, którą w przeglądarce jedynie wyświetlasz użytkownikowi. A kwota cały czas pozostaje bezpieczna po stronie serwera do momentu zatwierdzenia zamówienia/wystawienia faktury, czy co tam ma się stać.

0

Właśnie w widoku nr 1 liczę rabat (javascript) i zapisuje go do jakiejś zmiennej w js. W widoku numer 2 potrzebuje wiedzieć jaka jest cena po rabacie (nie mam skąd wziąć tej wartości), bo w parametrze nie jest to mądre żeby wysyłać do metody akcji, chyba że wyśle ajaxem jQuery zapisze do sesji a potem jak będę wyświetlał drugi widok z tej sesji odczytam. Nie wiem...

Może spróbować zapisać wartość po rabacie z js do modelu widoku?

2

No, ale czemu liczysz rabat w JS? Policz go na serwerze i problemu nie będzie. Każdą kwotę, którą wyślesz z przeglądarki na serwer, nieważne czy AJAXem, czy postem, czy do viewmodelu czy nie, użytkownik może podmienić, więc nie rób tego, bo to proszenie się o kłopoty.

1

Dokładnie tak jak mówi @somekind. W dzisiejszych czasach każda przeglądarka pozwoli Ci bez najmniejszego problemu manipulować javascriptem. Jakiekolwiek przetwarzanie danych wrażliwych (kwoty, dane osobowe, hasła z loginami) powinno odbywać się po stronie serwera.

0

No to dzięki za wyjaśnienie. W takim razie zrobię to po stronie serwera. Zapisanie do sesji wartości ceny i potem odczytanie jej w metodzie akcji dla innego widoku jest OK?

0

Ok, chociaż zamiast Session możesz zdaje się użyć TempData.

0

dzięki!

1 użytkowników online, w tym zalogowanych: 0, gości: 1