Поиск Confluence REST API - Ошибка при кодировании запроса CQL для HTTP GET

Я работаю со следующей документацией для реализации поиска на основе REST с использованием Confluence CQL: https://developer.atlassian.com/confdev/confluence-rest-api/advanced-searching-using-cql и https://docs.atlassian.com/atlassian-confluence/REST/latest/#d3e648

Я могу выполнять запросы GET с использованием идентификатора пользователя и пароля для других конечных точек в моей учетной записи Confluence Cloud. Однако когда я пытаюсь передать CQL-запрос конечной точке поиска, как показано ниже:

text ~ Tomcat

Я получаю следующую ошибку:

{
    "statusCode":400,
    "data":
        {"authorized":false,"valid":true,"errors":[]},
        "message":"Could not parse cql : text %7E Tomcat"
}

Может ли кто-нибудь сказать мне, что может быть причиной этого? Похоже, что кодировка CQL для передачи в HTTP GET каким-то образом вызывает ошибку в серверной части. Я использую Java для кодирования моих параметров GET с помощью UTF-8. Этот точный подход работает только с облачным поиском JIRA с использованием языка запросов JIRA (JQL), поэтому я не понимаю, что здесь происходит.

Я использую конечную точку: https://mycompany.atlassian.net/confluence/rest/api/content/search?

Я пробовал использовать HTTPS и HTTP. Я понимаю, что для конечной точки поиска ответ 400 означает «Возвращено, если CQL недействителен или отсутствует» - есть идеи, что мне здесь не хватает или что может быть не так с моим CQL?


person rc1    schedule 20.09.2015    source источник


Ответы (1)


Ошибка авторизации вызвана тем, что вы не вошли в свой экземпляр слияния ... Попробуйте войти в систему и используйте URL-адрес, подобный этому (в некоторых случаях слияние / не требуется)

https://mycompany.atlassian.net/confluence/rest/api/content/search?cql=space=DS

person Martin V Ottesen    schedule 14.10.2015