Я занимаюсь разработкой приложения ASP.NET MVC.Там я использую сервис API через System.Net.Http.HttpClient
.Вот контроллер, который выполняет задание
private readonly HttpClient _client;
public HomeController()
{
_client = new HttpClient()
}
public async Task<ActionResult> Index(SearchParam searchParam)
{
// API Initialization
_client.DefaultRequestHeaders.Clear();
_client.BaseAddress = new Uri(Uri);
_client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
// API Consumption By HttpClinet
var url = _searchService.GetApiQueryParams(searchParam);
var response = await _client.GetAsync(url);
var jsonString = await response.Content.ReadAsStringAsync();
var rootobject = JsonConvert.DeserializeObject<Response.Rootobject>(jsonString);
if (response.StatusCode == HttpStatusCode.OK)
{
var searchResults = _searchService.GetSearchResults(rootobject, searchParam);
return View("SearchResult", searchResults);
}
ModelState.AddModelError(string.Empty, "Sorry some internal error occur !");
return View("SearchResult");
}
. Это прекрасно работает на моем Local Server
, а также на IIS Server
.Но когда я публикую приложение на другом хост-сервере и пытаюсь использовать API, оно показывает эту ошибку.
Я обнаружил две аналогичные проблемы.Пожалуйста, обратите внимание на эти
ИзПервая проблема, я не получил "балансировщик нагрузки на сервер".А из второй проблемы, когда я добавляю решение в Web.config
, это показывает ошибку для proxyaddress="http://proxyserver"
, которая имеет смысл.
Теперь я остро нуждаюсь в решении этой проблемы.Я не очень хорош в квестах, поэтому, пожалуйста, не стесняйтесь предлагать или исправлять любые ошибки.