簡體   English   中英

PHP使用圖像請求檢測禁用的JavaScript

[英]PHP detect disabled JavaScript using image request

我正試圖通過在noscript元素內放置圖像來毫不干擾地檢測何時禁用JavaScript。 我不確定我在正確的道路上,盡管我不確定應該准確回顯哪些數據。

<noscript><img alt="" src="images/noscript.gif" /></noscript>

下面的base64編碼數據只是一個1x1透明GIF圖像。

 header('HTTP/1.1 200');
 header('Content-type: image/jpeg');
 echo 'data:image/gif;base64,R0lGODlhAQABAIAAAP8A/wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==';

我該怎么做才能確保我可以讓PHP截獲圖像請求並成功在頁面上顯示圖像(顯然在禁用JavaScript的情況下)?

<noscript><img alt="" src="path_to_script.php"/></noscript>

腳本:

header('HTTP/1.1 200');
header('Content-type: image/gif');
echo base64_decode('R0lGODlhAQABAIAAAP8A/wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==');

您可以將src屬性設置為PHP文件的鏈接:

<noscript><img alt = "" src = "[stuff].php" /></noscript>

另外,我不知道PHP服務器如何工作,但是在Python TCPServers和UDPServer中,服務器由具有此handle()方法的類運行,該方法從客戶端接收數據,然后將數據發送回去。 該數據可以與該鏈接的實際文件完全獨立。

如果在PHP中相同,那么您可以從images/noscript.gif鏈接請求,甚至沒有images/noscript.gif文件,然后從PHP文件發送回數據。

啊,我忘了我可以在服務器上解碼圖像。 關鍵是讓客戶端發出HTTP請求,否則服務器將無法識別服務器,因此無法記錄已禁用JavaScript。

<?php
header('HTTP/1.1 200');
header('Content-type: image/gif');
echo base64_decode('R0lGODlhAQABAIAAAP8A/wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==');
?>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM