這個技巧在「Ajax Hacks」書中有說明,非常簡單,只要在action裡面加上

if @request.xml_http_request?()來判斷即可。

我覺得這技巧非常實用,舉例來說,我最近在寫的程式牽涉到大量的資料存取, 假設我沒有在action裡面先確定是Ajax在前端做XHR就直接開始動作,若遭有心人士 以程式不斷對我的server發出request很有可能就會癱瘓我的資料庫(有這麼嚴重嗎XD)。

例如: def create
  if @request.xml_http_request?()
    #要執行的程式區塊
    #............
  end
end