
Наш API ASP.Net Core, развернутый на IIS в Windows 2019, связывается с Shippo, отправляя свыше 2500 запросов в час с номерами отслеживания, с которыми возникли проблемы в четверг днем. Наши вызовы API инициируются 5 службами промежуточного программного обеспечения клиентов, которые работают ежечасно 24/7. Наши запросы Shippo возвращают 404, хотя Shippo устранил проблему, и я могу подключиться через Postman.
Я не администратор сервера, но у меня достаточно знаний, чтобы попробовать следующее: остановил и запустил IIS с задержкой в 10 секунд. Перезагрузил машину. Отключил веб-сайт API на 90 минут. Очистил кэш DNS на сервере IIS, повторно развернул слегка измененную версию webapi. И, конечно же, сейчас праздничные выходные, и наш управляемый ИТ-провайдер не связался со мной. Что мне делать дальше, пока я жду?
решение1
Обновление: Это определенно было связано с отключением Shippo, но это была проблема с кодом. Наш устаревший код работал и выглядел так:
UriBuilder uribuilder = new UriBuilder(settings.url_base);
uribuilder.Path += "/tracks/";
Создаваемый URL-адрес явно ссылался на порт 443 (https://api.goshippo.com:443)/, вместо простогоhttps://api.goshippo.com/url, и я не замечал этого в отладке, пока не решил написать приложение, которое просто запрашивало бы Shippo за пределами нашего API. Судя по всему, Shippo изменили настройки, которые больше не позволяли URL-адресам ссылаться на порт 443 напрямую (ИЛИ изменили свой порт), примерно в то время, когда они решили свою проблему. Как только я правильно установил URL-адрес, все заработало. Спасибо Appleoddity и Кейту Лэнгмиду за помощь.