我正在使用自定義php腳本和GD庫根據POST中的某些默認值和參數呈現自定義圖像。渲染的PNG不工作的AJAX負載
我想構建一個自定義窗體,以允許用戶選擇這些參數,然後發送一個AJAX請求來渲染圖像並將其發回並在頁面中加載預覽。
問題是,第一次預覽的作品,但之後,我無法加載任何更多的預覽。我只是繼續在預覽窗口中看到相同的圖像。但是,我正在將映像寫入磁盤並且正在更新,所以我將其映像爲一些apache或瀏覽器緩存。下面是一些代碼:
AJAX請求就像
preview = new Image;
preview.src = url;
$(preview).load(preview.src, imagedata, function() {
$('#gaga-preview-space').html(this);
});
其中圖象 - 是的bgcolor一個陣列等我也產生對每個請求的時間戳,在希望它會從cachine的停止Apache響應。這在其他情況下有效,但不是這個。
的PHP生成腳本的樣子:
// Save file
$file = "/var/www/tribegaga/sites/all/files/gaga_customization/test.png";
$result = imagepng($image, $file);
// Spit out file
header("Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0");
header("Pragma: no-cache");
header("Content-Type: image/png");
imagepng($image);
imagedestroy($image);
你會看到我送一些頭,但這些都不是問題,無論是。
也許我在錯誤的道路上認爲它是緩存。但正如我所說,生成的.png工作正常。
更新:好的問題是,瀏覽器不POST來獲取圖像,GETS,所以現在我的腳本發送一個GET字符串,它的一切都非常奇妙。但我寧願沒有圖像src = http://site/script.php?string=params&test=foo等
如果你們都有任何suggstions我會很感激。
謝謝!