2009-10-23 89 views
0

驅使我nutso ....jQuery Post生產失敗,在本地系統上工作

我有一個。NET 2.0 web服務,需要一個字符串並返回XML。我有一個HTML頁面,它使用jQuery一個簡單的$ .post命令來調用服務並處理返回。該服務在遠程站點上運行,我可以通過URL訪問它,並且我可以使用SOAP_UI成功測試它沒有問題。

在我的機器上一切正常,但在遠程服務器上,jQuery調用失敗。

jQuery代碼是:

$.post("/sample.asmx/sampleFunction", { StringParam: paramValue }, 
    function(data) { 
     //stuff 
    }, 
"xml"); 

有什麼想法?

回答

0

您是否曾嘗試在$ .post方法中輸入完整的url?

我發現this根據您的螢火蟲錯誤(請求格式是無法識別爲URL意外結束於):

同時呼籲您的Web服務您可能會得到這個錯誤。在我的情況下,它在IIS7下運行得很好,並且在IIS6上部署時,它開始給出這個錯誤。搜索一段時間後,我發現我必須在web.config文件中啓用GET和POST協議。

+0

我有。我已經嘗試了我能想到的所有URL排列......完整,沒有引導反斜槓,本地主機...... – pkstephens 2009-10-23 19:57:35

+0

我可以給兩張支票嗎?這是解決方案。 – pkstephens 2009-10-23 20:15:48

+0

不,我會授予mimetnet,但我認爲檢查螢火蟲總是正確的答案,任何人都可以谷歌:P – rwilliams 2009-10-23 20:18:33

1

它是如何失敗?

您是否嘗試過使用$.ajax並註冊error回調?

+0

我也推薦這種方法。 – 2009-10-23 19:59:36

+0

具有相同的結果,您可以捕獲該錯誤。同時檢查您是否擁有有效的XML。如果XML在發佈後無效,它將自動失敗。 – 2009-10-23 20:00:51

3
  • FireBug生產與本地之間的報告是什麼?
    • 請求標頭是否相同?
    • 這兩者之間的結果是什麼?
  • [server] /sample.asmx是否在生產環境中創建了正確的服務?
+0

隨着螢火蟲我得到:請求格式無法識別的URL意外地以'/ sampleFunction'結尾... – pkstephens 2009-10-23 20:07:42

+0

從螢火蟲GOOGLE錯誤,找到解決方案:在遠程機器上的webConfig文件中添加協議部分。不知道螢火蟲,所以你得到支票!感謝大家這樣驚人的快速反應! – pkstephens 2009-10-23 20:14:18

2

您的PC和遠程服務器上的虛擬目錄是否相同?

因爲您使用「/」並表示您正在使用網站的根目錄。

+0

啊,好點。 +1節省我的時間。 – ajbeaven 2010-12-09 20:18:54

相關問題