Reputation: 157
i have some questions that I want to ask, I building a web site and I send in ajax data and do decode and decode (js to php).
1) I want to ask why we should use in ajax encode and decode on json ?
2) what the json stringify do? I do it like this:
var data = JSON.stringify([category, amount, repeated, note]);
but I not realy understand why I should use this..my freind told me its not secure to send ajax without json encode, is it true?
Upvotes: 1
Views: 4504
Reputation: 455
First, AJAX is not tied to JSON but is the most used. You could use XML, yaml or you own format. On other hand, you always have sanitize and validate any data sent by the user. This is the real security risk.
Second, if you use a library as jQuery or AngularJs, you do not need stringify
a javascript object (it is not the same as a JSON) the library does this for you.
// jQuery example
$.ajax({
url: '/save.php',
method: 'post',
data: {
id: 5,
name: 'pollin14'
}
};
// Save.php
$id = $_POST['id'];
$name = $_POST['name'];
Lastly, stringily
transforms a javascript object to a javascript string. It is useful if you want to save a javascript object in a cookie, for example. Because a cookie only can save strings. Then when you retrieve the cookie you can use JSON.parse
to get a javascript object.
Upvotes: 1