Почему я получаю сообщение об ошибке 404 при доступе к веб-API в работе с веб-приложением .NET MVC 5, но не при разработке - PullRequest
0 голосов
/ 06 июля 2019

Первый раз разработчик API, новый для MVC разработчика

API находится на производственном сервере, доступ к нему можно получить по ссылке в Chrome ex. Http: //.../reportservicesapi/api/group

Проект MVC на компьютере разработчика успешно обращается к API на производственном сервере по той же ссылке и может отображать данные.

Проект MVC, опубликованный на производственном сервере, возвращает ошибку HTTP «Код состояния ответа не указывает на успех: 404 (не найден).

В обоих проектах включена проверка подлинности Windows <- внутренняя сеть компании и требуемый процесс </p>

Проект MVC

APIPath = " http: //.../reportservicesapi/api/"

Url = " http: //.../reportservicesapi/api/Group? IncludeDeleted = false "

звонок в API

public class ServiceRepository
{
    private static HttpClient Client { get; set; }

    public ServiceRepository()
    {
        Client = new HttpClient(new HttpClientHandler()
        {
            AutomaticDecompression = System.Net.DecompressionMethods.GZip,
            UseDefaultCredentials = true,
            PreAuthenticate = true,
            ClientCertificateOptions = ClientCertificateOption.Automatic

        })
        {
            Timeout = new TimeSpan(0, 0, 30)
        };
        Client.DefaultRequestHeaders.Clear();
        Client.BaseAddress = new Uri(ConfigurationManager.ConnectionStrings["APIPath"].ToString());

    }

    public static async Task<HttpResponseMessage> GetResponse(string Url)
    {
        try
        {

            var request = new HttpRequestMessage(HttpMethod.Get, Url);
            request.Headers.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

            var response = await Client.SendAsync(request, HttpCompletionOption.ResponseHeadersRead);

            return response;
        }
        catch (Exception ex)
        {
            string tst = ex.Message;
            return new HttpResponseMessage();
        }
    }

Я ожидаю получить json, который затем можно сериализовать в модель и отобразить в моем приложении MVC. Однако вместо этого я получаю сообщение об ошибке 404.

Я пробовал много разных техник, но, как я уже сказал, я новичок в API и MVC. Пожалуйста, любая помощь будет приветствоваться.

...