Вопрос для рассмотрения.
Я воспользовался данной библиотекой для получения данных их JIRA.
С простыми праметрическими запросами проблем не возникло, но когда пришлось писать запросы с ипользованием jql, то возникли проблемы.
Дело в том, что могут использоваться запросы вида:
\search?jql=project=1200
\search?jql=worklogDate >= 2017-04-01 AND worklogDate <= 2017-05-01
Возникают две проблемы: Форматирование текста запроса и множественные знаки "=".
У Вас в функции РазобратьURL парсятся праметры по "=". В таком случае это приводит к ошибкам. Передача параметров через структуру помогает избежать проблемы, но не полностью, т.к. в процедуре ПодготовитьТелоЗапроса, при получении HTTPЗапрос.АдресРесурса, вызывается РазобратьURL еще раз для уже собранной строки. И она опять ломается.
Я для себя внес изменения:
АдресРесурса подготавливается сразу в функции ПодготовитьЗапрос через функцию ПодготовитьURL (точнее вместо нее).
Пришлось внести исключения в КодироватьПараметрыЗапроса для символов ">", " <" и других. Т.к. JIRA их использует в явном виде.
Вопрос для рассмотрения. Я воспользовался данной библиотекой для получения данных их JIRA. С простыми праметрическими запросами проблем не возникло, но когда пришлось писать запросы с ипользованием jql, то возникли проблемы. Дело в том, что могут использоваться запросы вида: \search?jql=project=1200 \search?jql=worklogDate >= 2017-04-01 AND worklogDate <= 2017-05-01 Возникают две проблемы: Форматирование текста запроса и множественные знаки "=".
У Вас в функции РазобратьURL парсятся праметры по "=". В таком случае это приводит к ошибкам. Передача параметров через структуру помогает избежать проблемы, но не полностью, т.к. в процедуре ПодготовитьТелоЗапроса, при получении HTTPЗапрос.АдресРесурса, вызывается РазобратьURL еще раз для уже собранной строки. И она опять ломается.
Я для себя внес изменения: АдресРесурса подготавливается сразу в функции ПодготовитьЗапрос через функцию ПодготовитьURL (точнее вместо нее). Пришлось внести исключения в КодироватьПараметрыЗапроса для символов ">", " <" и других. Т.к. JIRA их использует в явном виде.