iT邦幫忙

0

localhost連webservice OK,但上線就不行

  • 分享至 

  • xImage

目前要做一個連結到外部已提供的webservice,並傳回結果。

我先在localhost測試是可以連結,也順利取得回傳值(約一秒),

想說沒問題就放到IIS上,結果會出現【要求已經中止,作業逾時】,

請問是IIS還需要什麼設定嗎?

要求已經中止: 作業逾時。
描述: 在執行目前 Web 要求的過程中發生未處理的例外狀況。請檢閱堆疊追蹤以取得錯誤的詳細資訊,以及在程式碼中產生的位置。

例外狀況詳細資訊: System.Net.WebException: 要求已經中止: 作業逾時。

原始程式錯誤:

行 49:         [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://tempuri.org/CheckData", RequestNamespace="http://tempuri.org/", ResponseNamespace="http://tempuri.org/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
行 50:         public string CheckData(string strUID, string strPWD, string strData) {
行 51:             object[] results = this.Invoke("CheckData", new object[] {
行 52:                         strUID,
行 53:                         strPWD,

原始程式檔: c:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\dtc_ca\c4c11cf8\8c309260\App_WebReferences.t5y_gj__.7.cs    行: 51

堆疊追蹤:


[WebException: 要求已經中止: 作業逾時。]
   System.Net.HttpWebRequest.GetRequestStream(TransportContext& context) +916
   System.Net.HttpWebRequest.GetRequestStream() +13
   System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters) +104
   CService.CService.CheckData(String strUID, String strPWD, String strData) in c:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\dtc_ca\c4c11cf8\8c309260\App_WebReferences.t5y_gj__.7.cs:51
   T5_Old.btnCheckData_Click(Object sender, EventArgs e) in D:\Desktop\網站\Old.aspx.vb:352
   System.Web.UI.WebControls.Button.OnClick(EventArgs e) +9782698
   System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) +204
   System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +12
   System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +15
   System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +35
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1639

版本資訊: Microsoft .NET Framework 版本:4.0.30319; ASP.NET 版本:4.7.3282.0
無腦猜防火牆沒開
mayyola iT邦研究生 2 級 ‧ 2023-04-25 08:41:49 檢舉
IIS上線=>IIS管理員=>按右鍵=>轉換成應用程式=>DefaultAppPool
wu2960 iT邦新手 3 級 ‧ 2023-04-26 08:48:30 檢舉
to mayyola: 已經是應用程式了
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 個回答

0
by2048
iT邦高手 1 級 ‧ 2023-04-25 08:41:14

Web Service 通常有自定的TCP port 如6400
IIS最多提供HTTP 80 OR HTTPS 443 兩個PORT
先執行NETSTAT -A 看SERVER那些PORT 是LISTENING
再把防火牆打開(或者全關掉)測試

wu2960 iT邦新手 3 級 ‧ 2023-04-26 08:54:42 檢舉

要先知道對方的server哪些PORT在LISTENING?

by2048 iT邦高手 1 級 ‧ 2023-04-26 09:16:47 檢舉

我可能回答的不是很正確,基本上先看看WEBSERVICE 兩邊的LOG檔看錯誤訊息是什麼

我要發表回答

立即登入回答