我遇到了一個奇怪的情況,我不太確定從哪裏開始尋找。前端有一個knockout.js表單,後端有一個CakePHP表單。CakePHP GET請求僅在部分時間失敗
截至目前,我將一些JSON數據從knockout.js表單發送到CakePHP。這個PHP做了一些處理,然後以JSON格式將結果回顯給knockout javascript文件。
那麼,問題是,當我通過CakePHP進行PHP設置時,它似乎只能工作1/4時間。當我的webroot中有這個PHP文件時(只是一個標準文件,與Cake沒有關聯,因爲淘汰賽畢竟是後端不可知的),它在100%的時間內都能正常工作。
因此,這裏有兩個數據流
Fails frequently: knockout.html -> knockout.js -> CakePHP Controller -> echo in CakePHP view-> knockout.js -> knockout.html
Works 100%: knockout.html -> knockout.js -> PHP in webroot, echo from the same page -> knockout.js -> knockout.html
我只想用PHP文件在我的根目錄,但我必須在數據庫中查詢一些東西,我想保持所有查詢了去蛋糕,而不是外部來源。
CakePHP方法可能花費太長時間並且失敗,因爲它沒有足夠快地返回結果嗎?
編輯 - 我改變了我的控制器,所以沒有計算,它只是傳遞一些JSON編碼的文本到視圖。這不會產生任何錯誤,並且已經100%的工作。那麼,可以肯定地說CakePHP導致錯誤的時間太長了嗎?我知道一個框架比普通的PHP需要更長的時間,但爲什麼會導致它失敗呢?我沒有做任何激烈的計算。
你能簡單解釋一下你在做什麼樣的計算?它涉及數據庫查詢嗎?也許通過requestAction調用另一個動作? – Headshota 2013-04-23 11:06:57
@Headshota首先,我從我的數據庫中抓取一個項目,然後使用PHPquery從另一個站點獲取一些內容(3個實例),這可能需要一段時間。但是,我不明白爲什麼CakePHP和標準PHP文件之間有如此巨大的差異。我甚至試圖通過設置該變量等於預期值並將其用於PHPquery來消除數據庫查詢,並且它偶爾也會導致我相信CakePHP無法與PHPquery一起使用。 – user1104854 2013-04-23 11:19:55
@Headshota我應該澄清一點,我只從我的數據庫中獲取一次內容,然後使用PHPquery從外部源獲取項目三次。 – user1104854 2013-04-23 11:40:47