Я вижу много одинаковых исключений в Application Insights для запросов HEAD для многих путей на моем веб-сайте:
System.ArgumentException: ведущий знак '?' должен быть включен для непустого запроса. (Параметр 'значение')
Веб-сайт работает в Azure службе приложений. Когда я отлаживаю локально и нажимаю те же URL-адреса с запросом HEAD, он возвращает 405 Not Implemented, но без исключений. Возможно, потому что local использует Kestrel, а Azure использует IIS?
Я указываю маршруты следующим образом:
endpoints.MapControllerRoute(
name: "home-test",
pattern: "home/test",
defaults: new { controller = "Home", action = "Test" });
endpoints.MapControllerRoute(
name: "home-test-id",
pattern: "home/test/{id}",
defaults: new { controller = "Home", action = "Test" });
И действие моего контроллера выглядит так:
[HttpGet]
public async Task<IActionResult> Test(string id)
Как лучше всего разрешить эти исключения?