security - How can I better protect my php, jquery, ajax requests from malicious users -


i send lot of data through jquerys getjson method, example of function is

function dosomething(sid){     if(sid){      $.getjson("ajax/ajaxdosomething.php",{sid:""+sid+""}, function(data){         //alert(data);         if(data.success == true){             $('#add_vote_div').html('vote received');             $('#list_data_div').html(data.html);         }         else{             $('#add_vote_div').html(data.message);         }     });   }  }` 

the problem can @ source , see location of php file sending data to, therefore point browser there , append data url. checks on data make sure right data type, dont want users able go url @ all.

i thought maybe put ajax files behind main document root work jquery can't link absolute paths like

$.getjson("var/www/ajax/dosomething.php",{sid:""+sid+""} 

(main document root var/www/html/)

if made $.postjson work better, doesn't exist, ideas?

it raises bar hacking slightly, can post json via jquery.ajax (that's link) or jquery.post (so's that). jquery.getjson wrapper ajax (as .post, , .get). getjson docs:

this shorthand ajax function, equivalent to:

$.ajax({     url:      url,     datatype: 'json',     data:     data,     success:  callback });

thus, postjson concept, you'd add type parameter it:

$.ajax({     url:      url,     type:     'post',   // <== new bit     datatype: 'json',     data:     data,     success:  callback }); 

if wanted to, add postjson jquery object, pre-processing arguments , calling $.ajax. copy-and-paste the jquery source, switching .get .post:

if (!jquery.postjson) {     jquery.postjson = function( url, data, callback ) {         return jquery.post(url, data, callback, "json");     }; } 

mind you, it's still pretty easy fake post. not easy get, still pretty easy.


Comments

Popular posts from this blog

android - Spacing between the stars of a rating bar? -

aspxgridview - Devexpress grid - header filter does not work if column is initially hidden -

c# - How to execute a particular part of code asynchronously in a class -