2017-02-22 17 views
0

У меня возникла проблема с Cloudsearch и AWS API Gateway. У меня есть домен CloudSearch с подробной информацией о сырах (Не спрашивайте ;-)), и я могу запросить сыры отлично с помощью теста поиска консоли и через мой API шлюза, пока запрос Simple:Cloudsearch через API-интерфейс Gateway не возвращает результаты, выдает URL-кодирование?

q=feta&q.parser=simple&q.options={"fields":["cheeseid"]} 

И Я могу сделать то же самое с помощью консоли, если это Structured, как это:

q=(and cheeseid:'feta')&q.parser=structured 

Но тот же запрос не работает через API шлюза. Например, этот запрос (с помощью приложения на основе браузера):

q=(and+cheeseid%3A%27feta%27)&q.parser=structured 

возвращает никаких результатов, несмотря на его точно так же, когда URL-декодируется.

Интересно, что выход из результатов Raw Search через консоль есть это:

q=(and+cheeseid%3A'feta')&q.parser=structured 

, который делает меня вещь, что ' не должен быть закодирован, но я не уверен, как осуществить это, как я вы пробовали передать необработанную строку без обработки и встретились с тем же результатом.

Если кто-то может указать мне в правильном направлении, я был бы очень благодарен, поскольку я стучу головой о кирпичную стену, пытаясь найти мои сыры!

ответ

1

Ошибка в URL-адресе вашего запроса неверна. Символы скобок() также должны быть закодированы. Предполагая, что это передается в строке запроса, то URL закодирован от должен выглядеть следующим образом:

q=%28and+cheeseid%3A%27feta%27%29&q.parser=structured 

Если это не работает, то, пожалуйста, проверить ваш метод вызова в API консоли шлюза с помощью теста и после полной вывод отладки.

+0

Привет, @MikeD, это было совсем не так, вы знаете, что это было? Я не публиковал 'q.parser', несмотря на часы отладки! Побалуйте меня глупо! Спасибо, что вернусь ко мне и напоминая мне, чтобы ответить на мой собственный вопрос! И вы, конечно, правильно относились к кодировке, и она была правильно закодирована :-) – annoyingmouse

 Смежные вопросы

  • Нет связанных вопросов^_^