σελίδες ajax

Σε αυτή την περιοχή μπορείτε να βρείτε ή να αναζητήσετε πληροφορίες σχετικές με την PHP

Συντονιστές: WebDev Moderators, Super-Moderators, PHP Moderators

Απάντηση
Serghio
Δημοσιεύσεις: 451
Εγγραφή: 08 Φεβ 2011 19:20
Τοποθεσία: Περιστέρι

σελίδες ajax

Δημοσίευση από Serghio » 08 Φεβ 2016 13:18

στην εφαρμογή που φτιάχνω...κάποιες σελίδες δέχονται ajax requests και ακολούθως τα επεξεργάζονται.

Αυτές οι σελίδες δεν έχουν κάποιο περιεχόμενο να δείξουν στον επισκέπτη του site.
Το ερώτημα εδώ είναι τι κάνω στην περίπτωση που θελήσει ο επισκέπτης να επισκεφθεί αυτές τις σελίδες...ιδίως αν ειναι κάποιος που ξέρει να χρησιμοποιήσει τα dev tools και μπορεί να δει που πηγαίνουν τα ajax requests.

Nα βγαίνει κάποιο μηνυμα π.χ και μετά να γίνεται redirection ή να απαγορεύσω τελείως την πρόσβαση σε αυτές και αν ναι πως να το κάνω αυτο;

Άβαταρ μέλους
giannis17
Honorary Member
Δημοσιεύσεις: 1215
Εγγραφή: 06 Ιαν 2005 19:50
Τοποθεσία: Παγκράτι - Αθήνα
Επικοινωνία:

σελίδες ajax

Δημοσίευση από giannis17 » 10 Φεβ 2016 09:01

Λογικά το ajax σου στέλνει κάποια δεδομένα είτε POST είτε GET (γραμμένα στο url).

Στo PHP λοιπόν που απαντάει στο ajax θα ξεκινήσεις ελέγχοντας αν υπάρχουν αυτές οι μεταβλητές

π.χ.

Κώδικας: Επιλογή όλων

if(!empty($_POST["metavliti"])):

... ο υπόλοιπος κώδικας ...

else:
header('HTTP/1.0 403 Forbidden');
echo 'Access Denied';
endif;
Οπότε όποιος πάει να μπει κατευθείαν στο php σου χωρίς το post θα βλέπει 403 error
"There is only one problem with common sense; it’s not very common."
– Milt Bryce

Serghio
Δημοσιεύσεις: 451
Εγγραφή: 08 Φεβ 2011 19:20
Τοποθεσία: Περιστέρι

σελίδες ajax

Δημοσίευση από Serghio » 10 Φεβ 2016 09:34

πριν απαντησεις..είχα κάνει ένα ψάξιμο και ειχα καταλήξει σε αυτο:

Κώδικας: Επιλογή όλων

if ($_SERVER['REQUEST_METHOD'] !== "POST") { 
  echo "you can't GET here"; 
  exit;
}
Ποια ειναι η άποψη σου για το παραπάνω;

alou
Script Master
Δημοσιεύσεις: 1374
Εγγραφή: 24 Αύγ 2007 19:52
Επικοινωνία:

σελίδες ajax

Δημοσίευση από alou » 10 Φεβ 2016 15:34

Πρώτα από όλα, έτσι και αλλιώς θα πρέπει να έχεις ένα csrf token στο header. Το τσεκάρεις, αν υπάρχει τότε στέλνεις το response που πρέπει, αν όχι γυρνάς error code 500.

Serghio
Δημοσιεύσεις: 451
Εγγραφή: 08 Φεβ 2011 19:20
Τοποθεσία: Περιστέρι

σελίδες ajax

Δημοσίευση από Serghio » 10 Φεβ 2016 16:22

alou έγραψε:Πρώτα από όλα, έτσι και αλλιώς θα πρέπει να έχεις ένα csrf token στο header. Το τσεκάρεις, αν υπάρχει τότε στέλνεις το response που πρέπει, αν όχι γυρνάς error code 500.
μπορείς να δωσεις ενα παράδειγμα....

στον κώδικα του giannis17 υπάρχει csrf token;

Άβαταρ μέλους
jpk
Δημοσιεύσεις: 441
Εγγραφή: 09 Μαρ 2011 21:17

σελίδες ajax

Δημοσίευση από jpk » 07 Μάιος 2016 15:49

Επειδή το robotaki της Google έχει μάθει και πατάει κουμπιά με js … ένα 302 redirection είναι μια καλή επιλογή. Και δεν το μπλοκάρεις στην πηγή (ώστε να υποπτευθεί ότι κρύβετε κάτι) και του λες ουσιαστικά να σταματήσει τις βλακείες με αυτό το action (ότι είναι τμήμα της εμπειρίας χρήσης) .

Απάντηση

Επιστροφή στο “PHP Προγραμματισμός”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 0 επισκέπτες