получение Длина URL для этого запроса превышает настроенное значение maxUrlLength только для 4 строк данных после публикации API на iis - PullRequest
1 голос
/ 29 октября 2019

У меня есть asp.net web api MVC4, который тестирует его на локальном хосте POSTMAN, и он отлично работает, когда я публикую его на сервере и проверяю Postman, я вижу, длина URL-адреса для этого запроса превышает настроенное значение maxUrlLength,я сократил количество данных до одного! но все та же ошибка

мой класс:

  public IEnumerable<myStat10> Get(string id, string dttimeFrom, string dttimeTo)

    {

        string format = "ddMMyyyy";
        DateTime fromdate = DateTime.ParseExact(dttimeFrom, format, CultureInfo.InvariantCulture);
        DateTime todate = DateTime.ParseExact(dttimeTo, format, CultureInfo.InvariantCulture);
        IPAddress turip = IPAddress.Parse(id);

        var rslt = (from m in _context.stat10

                    where m.m_turbine_id ==id && m.m_time_stamp >= fromdate && m.m_time_stamp <= todate
                    select new myStat10

                    {
                          m_time_stamp=m.m_time_stamp,
                          m_turbine_id=m.m_turbine_id,                  
                          m_wind_speed=m.m_wind_speed, 
                          m_rpm =m.m_rpm,
                          m_power=m.m_power, 
                          m_t_blade_1=m.m_t_blade_1, 
                          m_t_blade_2=m.m_t_blade_2, 

                    }).Take(1).toList();

это мой webApiConfig:

  config.Filters.Add(new BasicAuthenticationAttribute());


        config.Routes.MapHttpRoute(
            name: "DefaultApi",
            routeTemplate: "api/{controller}/{id}",
            defaults: new { id = RouteParameter.Optional }
        );

веб-конфигурация:

    <httpRuntime maxUrlLength="209715" />
    <customErrors mode="Off" />
    <compilation debug="true" targetFramework="4.5" />
    <httpRuntime targetFramework="4.7.1" />
    <authentication mode="None" />
    <pages>
    <namespaces>
    <add namespace="System.Web.Helpers" />
    <add namespace="System.Web.Mvc" />
    <add namespace="System.Web.Mvc.Ajax" />
    <add namespace="System.Web.Mvc.Html" />
    <add namespace="System.Web.Optimization" />
    <add namespace="System.Web.Routing" />
    <add namespace="System.Web.WebPages" />
  </namespaces>
</pages>

1 Ответ

1 голос
/ 29 октября 2019

Обновите свойство maxUrlLength в вашем файле web.config: https://docs.microsoft.com/en-us/dotnet/api/system.web.configuration.httpruntimesection.maxurllength?view=netframework-4.8

Попробуйте использовать максимально допустимое значение, равное 209715.

...