{"id":436,"date":"2008-10-17T13:50:46","date_gmt":"2008-10-17T11:50:46","guid":{"rendered":"https:\/\/devpath.pro\/?p=436"},"modified":"2008-10-17T13:50:46","modified_gmt":"2008-10-17T11:50:46","slug":"ita-validazione-chiamata-ajax","status":"publish","type":"post","link":"https:\/\/fabiocicerchia.it\/web\/ita-validazione-chiamata-ajax","title":{"rendered":"[ITA] Validazione chiamata AJAX"},"content":{"rendered":"\n

Validare una chiamata AJAX o presunta tale si pu\u00f2 fare tramite un HTTP Header particolare: HTTP_X_REQUESTED_WITH. Il browser che effettua una chiamata AJAX imposta sempre questo header e lo valorizza a \u201cXMLHttpRequest\u201d. Quindi verificando questo header si scoprir\u00e0 se la chiamata \u00e8 reale o \u00e8 stata generata (quindi non \u00e8 affidabile e bisognerebbe bloccare la risposta).<\/p>\n\n\n\n

function is_ajax() {
return (isset($_SERVER['HTTP_X_REQUESTED_WITH']) && ($_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest'));
}<\/pre>\n","protected":false},"excerpt":{"rendered":"

Validare una chiamata AJAX o presunta tale si pu\u00f2 fare tramite un HTTP Header particolare: HTTP_X_REQUESTED_WITH. Il browser che effettua una chiamata AJAX imposta sempre questo header e lo valorizza a \u201cXMLHttpRequest\u201d. Quindi verificando questo header si scoprir\u00e0 se la chiamata \u00e8 reale o \u00e8 stata generata (quindi non \u00e8 affidabile e bisognerebbe bloccare la […]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"advgb_blocks_editor_width":"","advgb_blocks_columns_visual_guide":"","footnotes":""},"categories":[14],"tags":[19,11,20,21],"aioseo_notices":[],"author_meta":{"display_name":"fabio","author_link":"https:\/\/fabiocicerchia.it\/author\/fabio"},"featured_img":null,"coauthors":[],"tax_additional":{"categories":{"linked":["Web<\/a>"],"unlinked":["Web<\/span>"]},"tags":{"linked":["ajax<\/a>","italian<\/a>","php<\/a>","validation<\/a>"],"unlinked":["ajax<\/span>","italian<\/span>","php<\/span>","validation<\/span>"]}},"comment_count":"0","relative_dates":{"created":"Posted 15 years ago","modified":"Updated 15 years ago"},"absolute_dates":{"created":"Posted on October 17, 2008","modified":"Updated on October 17, 2008"},"absolute_dates_time":{"created":"Posted on October 17, 2008 1:50 pm","modified":"Updated on October 17, 2008 1:50 pm"},"featured_img_caption":"","series_order":"","_links":{"self":[{"href":"https:\/\/fabiocicerchia.it\/wp-json\/wp\/v2\/posts\/436"}],"collection":[{"href":"https:\/\/fabiocicerchia.it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fabiocicerchia.it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fabiocicerchia.it\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fabiocicerchia.it\/wp-json\/wp\/v2\/comments?post=436"}],"version-history":[{"count":0,"href":"https:\/\/fabiocicerchia.it\/wp-json\/wp\/v2\/posts\/436\/revisions"}],"wp:attachment":[{"href":"https:\/\/fabiocicerchia.it\/wp-json\/wp\/v2\/media?parent=436"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fabiocicerchia.it\/wp-json\/wp\/v2\/categories?post=436"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fabiocicerchia.it\/wp-json\/wp\/v2\/tags?post=436"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}