我遇到了一個問題的牆,它可能比我更關心的是承認跟蹤這件事。Lucee/AJAX/CFARGUMENT失敗
具體來說,我有一個jQuery AJAX調用,將一些數據傳遞給.cfc我調用方法,並且我傳入一些參數運行一些數據庫查詢,然後不返回任何內容。然後我使用AJAX函數的成功方法繼續。
我在ColdFusion 11服務器上開發了它,它可以工作。然而,在我最近搬到Lucee服務器時,我遇到了各種各樣的問題。
首先我注意到成功方法沒有被調用。然而,Firebug在通話中報告了200 OK。所以我進一步檢查了數據庫查詢都在方法中運行。除此之外,Lucee日誌看起來也很乾淨,並承認數據庫查詢已成功運行。所以一切都很好(我知道要檢查的東西)。我已經做了基礎知識,嘗試了不同的機器和不同的瀏覽器,但這並不是什麼特別的,但沒有任何變化。
我注意到Firefoxes Inspect Element拋出了一個沒有找到元素的錯誤,並且在進一步檢查後發現我發佈到cfc的參數是未定義的。這導致我進一步挖掘,並且我注意到它返回了這個錯誤'XML解析錯誤:找不到任何元素'仍然說返回是200 OK,但還沒有足夠通向AJAX調用的成功方法。
其他想法我沒有真正的結果嘗試過,但是啓用CORS,包括JSON的返回類型(去掉了XML錯誤,但沒有其他的東西)。
任何想法我可以嘗試,我開始懷疑整個Lucee設置是否被破壞,我需要廢棄它並重新安裝?
感謝任何幫助或想法,你可以扔
編輯:道歉不重視代碼,因爲這似乎是連接建立,我天真地希望有人會去服務器「。是的,你需要設置這個設置並修改這個文件,你很好!「那麼我們都會對Tomcat發笑。
我假設第一個評論說:「向我們展示你的代碼!」事實並非如此。因此,採取我組建了一個最小的測試案例的提示仍然證實了我最初的問題:
test.cfm
<!--- jQuery 2.1.4 --->
<script src="./jQuery-2.1.4.min.js"></script>
<script>
$(document).ready(function() {
$.ajax({
type: "post",
url: "./test.cfc",
data: {
method: "test",
var1: "var1",
var2: "var2"
},
success: function(result) {
alert('Hello Friend!');
}
});
});
</script>
test.cfc
<CFCOMPONENT>
<!--- Test Function --->
<CFFUNCTION NAME="test" ACCESS="remote">
<CFARGUMENT NAME="var1" />
<CFARGUMENT NAME="var2" />
<CFOUTPUT>
Var 1: #var1#<br />
Var 2: #var2#
</CFOUTPUT>
</CFFUNCTION>
<!--- End Test Function --->
</CFCOMPONENT>
,可能更重要的我在Lucee 4.5.1.023
像以前一樣,任何幫助總是不勝感激。
您是否已將您的代碼還原到我們可以查看的便攜式數據複製案例中?如果你:你需要。它也應該成爲您常規故障排除的一部分:將您的代碼元素分解出來,不會對您的問題造成影響:這樣可以更好地幫助確定* *會對您的問題做出什麼貢獻。最好向我們展示代碼,而不是描述它是如何工作的,而是讓它用來猜測代碼可能是什麼。 –