2012-05-27 65 views
0

我有代碼,對開發環境(我的機器)的作品,雖然 上不IIS6ScriptMethod在ASPX頁面上,從瀏覽器調用,IIS6返回404

工作,我必須在ASPX頁面的方法,它有一個類似的足跡:

[WebMethod()] 
[ScriptMethod()] 
public static string HelloWorld(string name) 
    { 
     return 'Hi '+name; 
    }  

當我看到瀏覽器上的控制檯,我可以看到我的腳本調用這個方法,雖然IIS返回沒有找到404。

該腳本將HTTP POST到這個網址: http://mydomain.com/myPage.aspx/HelloWorld

我猜測它有事情做與IIS MIME類型?

回答

0

發現此問題的解決方案, 問題是由兩件事引起的。

首先,我需要把它添加到Web.config

<webServices> 
    <protocols> 
     <add name="HttpGet"/> 
     <add name="HttpPost"/> 
    </protocols> 
</webServices> 

然後,另一個問題是使用的URL的工具重寫稱爲UrlRewritingNet (http://www.urlrewriting.net /149/en/home.html)

配置此模塊的方法之一是將IIS6作爲ISAPI篩選器進行匹配,以匹配通配符*,因此如果沒有匹配文件擴展名,則此篩選器將會運行查詢。

我解決第二個問題的方法是對我的服務執行XML查詢,而不是json。然後在撥打電話時使用帶有文件擴展名的網址。

希望這會有所幫助