В @requestMapping Вы можете добавить переменные, такие как Produces или Consumes, например:
consumes = MediaType.APPLICATION_JSON_VALUE
produces = MediaType.APPLICATION_JSON_VALUE
Я решил свою проблему путем обновления моей.NetFramework версии от 4.5.2 до 4.7.2.
Вместо того, чтобы явно устанавливать протокол системы защиты, лучший путь состоит в том, чтобы установить web.config < компиляция targetFramework = "4.5"> или выше.
Я видел эти конкретные исключения, связанные с проблемами сложного типа данных, смотрите следующий пост, если вы передаете коллекции или перечисления:
Если вы используете режим передачи = потоковый, попробуйте изменить его на буферизованный.
Если проблема не в этом, не могли бы вы опубликовать свою конфигурацию.
Была эта проблема с истинной привязкой HTTPS и такое же исключение с "Это могло быть связано с тем, что сертификат сервера не настроен должным образом с HTTP. SYS в случае HTTPS ... ". После двойной проверки всего кода и конфигурации кажется, что сообщение об ошибке не так вводит в заблуждение, как внутренние исключения, поэтому после быстрой проверки мы обнаружили, что порт 443 был перехвачен скайпом (на dev сервер). Я рекомендую вам взглянуть на то, что задерживает запрос (здесь может помочь Fiddler), и убедитесь, что вы можете добраться до службы (просмотрите .svc в своем браузере) и ее метаданных.
Удачи.
Поскольку все работало нормально в течение нескольких недель, а затем остановилось, я сомневаюсь, что это как-то связано с вашим кодом. Возможно, ошибка возникает, когда служба активирована в IIS / ASP.NET, а не при вызове вашего кода. Среда выполнения может просто проверять конфигурацию веб-сайта и выдавать общее сообщение об ошибке, не имеющее ничего общего с сервисом.
Я подозреваю, что срок действия сертификата истек или привязки установлены неправильно. Если веб-сайт неправильно настроен для HTTPS, независимо от того, использует ли ваш код их или нет, вы можете получить эту ошибку.