我們正在遇到sendAssync發送來自服務器的呼叫不起作用的情況。這裏是我的方案SendAsync無法從外部服務器(Web API2)工作
我們有服務器上託管的我們的內部網絡(DMZ),其中有實現它作爲
Public HttpResponseMessage Get(strind id){ (API 1)
//do some work
using(HttpClient client = new HttpClient()){
//We Invoke another web API which is hosted inside our network and do a post // as
HttpRequestMessage message = new HttpRequestMessage(HttpMethod.Post, url);
message.Content = new StringContent(someStr);
message.Content.Header.ContentType = new MediaTypeHeaderValue("application/json");
try{
var response = client.SendAsync(message).Result (API 2)
}
catch(Exception e){
//Something
}
}
的後SendAsync()一個簡單的GET以外的Web API,結果失敗,出現以下異常
at System.Threading.Tasks.Task`1.GetResultCore(Boolean waitCompletionNotification),並且消息表示爲發生一個或多個錯誤。
innerexception也沒有告訴任何好事。它只是InnerException.StackTrace將變爲空白,並且InnerException.Message是發送請求時發生的錯誤。
爲了測試通信,我們從外部服務器爲API 2運行了一個GET請求,並且它工作正常,但POST不起作用。
當我們的內部服務器上都有API(用於獲取和用於發佈帖子的另一個API)託管時,一切正常。
任何建議爲什麼從外部服務器執行時可能不工作?
看看內部的內部異常。 – SLaks
@Slaks我們做了上面提到的「他的innerexception也沒有告訴任何好東西,它只是InnerException.StackTrace空白,InnerException.Message是發送請求時發生錯誤 」 – fireholster
檢查**內部* * InnerException – SLaks