這裏有一個有趣的問題:無法從jQuery的
我有一些jQuery的,看起來像這樣:
$(document).ready(function() {
$.ajax({
type: "POST",
url: "http://localhost:63056/Service1.asmx/PrintOrderRecieptXml",
data: {"CouponCode":"TESTCODE","Subtotal":14.2600,"ShippingTotal":7.5000,"TaxTotal":0.0000,"GrandTotal":21.7600,"OrderItemCollection":[{"Total":14.2600,"Qty":250}]},
dataType: "json",
contentType: "application/json",
error: function(xhr, msg) { alert(xhr.statusText); }
});});
現在,我遇到的問題是,它的發送請求,但Web服務沒有正確處理它。在IE中,我收到一個帶有「內部服務器錯誤」的警告框,並且使用FireFox,我得到一個沒有任何內容的警告框。
奇怪的是,當我使用IE瀏覽器,我沒有得到我的事件日誌中的錯誤事件,但用Firefox,我得到(搞清楚爲什麼這是加分):
「異常消息:請求格式是無法識別的URL在「/ PrintOrderRecieptXml」
戳我周圍的一些,結果發現,有時你必須添加意外結束:
<webServices>
<protocols>
<add name="HttpGet"/>
<add name="HttpPost" />
<add name="HttpPostLocalhost"/>
</protocols>
</webServices>
到Web.config,我做到了,但它確實沒有幫助。有趣的是,Web服務可以正常使用SOAP或發送查詢字符串,但不能與JSON一起使用。
任何想法?
+1擊敗我! – 2009-12-24 20:09:41
這似乎是正確的道路。但是,仍然無法在Firefox中使用。在IE中很好用。 – James 2009-12-24 20:25:12
Firefox現在如何失敗?你在服務器上看到請求嗎?請求是否被ASP.Net正確處理?它是否碰到你的錯誤處理程序客戶端? – Annabelle 2009-12-24 21:08:13