Отправлять URL как параметр get / получать его непрерывно в ответе XML? - PullRequest
0 голосов
/ 31 октября 2019

У меня есть приложение Winforms, которое очень старое, и некоторые из сервисов, которые он до сих пор использует, очень старые и находятся вне моего контроля.

Итак, мое приложение отправляет данные определенной службе в виде запроса HTTP GET,Параметры и значения обрабатываются так, как вы ожидаете («? Firstname = Joe & lastname = Lauria»). Удаленный сервис в основном вставляет / обновляет данные в своей базе данных.

Однако, когда мы обращаемся к FETCH, данные, о которых мы говорим, имеют структуру ответа XML.

Это всену и хорошо в течение многих лет, используя только простые строки, такие как имя и номер телефона.

Однако мы внезапно обнаружили, что нам необходимо изменить способ использования одного параметра. Он представляет собой идентификатор чата. И если раньше это была просто обычная строка ... теперь нам нужно обойти URL.

Конечно, в раннем тестировании я пытался закодировать URL перед отправкой. И хотя для вставки это работало нормально, это в основном сломало ответ. Я точно забыл, что мы возвращали, но я понял, что преобразование & в и & по-прежнему приводит к тому, что удаленная служба пытается вставить недопустимый символ в создаваемый XML. И я не имею никакого контроля над этой удаленной службой.

Итак, я решил это, обернув URL (unencode) в структуру CDATA. И это, кажется, работает. Но я читал пост где-то на днях, в котором говорилось, что это "плохая форма" ?? Есть ли какой-нибудь «более правильный» способ справиться с этим?

Спасибо!

...