2015-04-01 129 views
1

我正面臨與Web服務調用相關的一個問題。它在我的本地機器上運行得非常好。但是一旦我將其部署在Web(IIS 7)服務器上並試圖進行服務調用,那麼此時它將引發404(資源未找到)錯誤。Web服務(.asmx)在IIS 7中引發404錯誤

對於您的實物信息,我已將服務保留在Web服務器上的正確位置,我也檢查了它的權限也沒問題。 爲了您的提示,jsdebug沒有得到在網絡服務器上創建 例如: 如果我把我的本地機器的url http://localhost:8080/Service.asmx/jsdebug然後jsdebug帶有下載選項,但是當我把相同的網絡服務器,然後錯誤即將到來:

「404 - 文件或目錄未找到。 您正在查找的資源可能已被刪除,更名或暫時不可用。

請推薦

回答

0

此問題已得到解決。當我們遇到這個問題時,我們正在更新我們的應用程序DNN 7.3。此場景中的解決方案是從DNN提供的webconfig中刪除路由協議

非常感謝您的回覆我appriciate它。

0

試試這個:

JS

$.ajax({ 
     type: "POST", 
     url: 'WebService.asmx/YourMethod', 
     data: {}, 
     async: false, 
     contentType: "application/json; charset=utf-8", 
     success: function (result) { 
       alert(result.d); 
     }, 
     failure: function (error) { 
     } 
    }); 

ASMX

[WebService(Namespace = "http://tempuri.org/")] 
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] 
[System.ComponentModel.ToolboxItem(false)] 
[System.Web.Script.Services.ScriptService] 
[Serializable] 
public class WebService : System.Web.Services.WebService 
{ 

      [WebMethod] 
      public string YourMethod() 
      { 
        return "OK"; 
      } 
} 

WebConfig(內部的System.Web標籤)

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