我目前正在Magento上構建一個擴展,其中的一部分是允許其他站點從我的擴展中獲取信息的API。這些調用將是跨源的,但我現在不擔心身份驗證,使得跨源資源共享更容易設置。從Javascript中異步調用Magento時出現隨機錯誤
我打電話的混合使用CSS,HTML,JSON,有時使用API的圖像。每當我這樣調用異步時,由於每次調用的隨機錯誤,大約有5%的失敗機率。下面是我收到的錯誤列表:
- 500服務器錯誤:只是一般的服務器錯誤,可能是很多事情
- 404錯誤:我猜路由器沒有正確加載
- 原點空:「訪問控制允許來源不允許原始位置」。這是由於服務器未到達將我的源頭標頭設置爲*的部分。
- 空字符串:有時它可以工作,但只是返回一個空字符串,而不是我試圖抓取的資產。
- 引發Magento錯誤示例!
Module "TBT_RewardsCoreSpending" requires module "TBT_RewardsCoreCustomer". Uncaught SyntaxError: Unexpected token _sortModuleDepends(Array) #2 C:\Users\Skaught\ST\me11110\app\code\core\Mage\Core\Model\Config.php(315): Mage_Core_Model_Config->_loadDeclaredModules() #3 C:\Users\Skaught\ST\me11110\app\code\core\Mage\Core\Model\App.php(409): Mage_Core_Model_Config->loadModules() #4 C:\Users\Skaught\ST\me11110\app\code\core\Mage\Core\Model\App.php(338): Mage_Core_Model_App->_initModules() #5 C:\Users\Skaught\ST\me11110\app\Mage.php(640): Mage_Core_Model_App->run(Array) #6 C:\Users\Skaught\ST\me11110\index.php(77): Mage::run('', 'store') #7 {main}
只要我做這些調用同步,錯誤消失。但是,由於需要撥打大量電話,這不是一個可行的解決方案。當我通過Magento代碼進行潛水和斷點時,它似乎在每個錯誤的隨機部分中斷裂。
如果您有任何我應該尋找的原因,將不勝感激。謝謝!
認爲這可能是這種情況。感謝文章,他們寫得很好。現在我知道這些錯誤是Magento固有的,而且我們的產品環境似乎是緩解這些錯誤的理想選擇,所以我可以繼續前進,並在設計我的請求時牢記這一點。真棒! Alan Storm,你是,現在仍然是一位紳士和學者。 – stolksdorf 2012-03-22 14:36:11