Доступ к URL-адресу базы данных Couch DB через перезаписанный URL-адрес с параметрами запроса

У меня на моем веб-сайте закончился экземпляр Couch DB, поэтому мой виртуальный хост настроен так, чтобы указывать на / dbname /_design/app/_rewrite.

Я хочу иметь доступ к странице индекса из веб-браузера, при этом по-прежнему используя API Couch DB через Ajax, поэтому я установил пару правил перезаписи в моем перезаписывает поле :

[ { "from": "/dbname/*", "to: ../../*" },
  { "from": "/*", "to: *" } ]

Эти правила работают нормально: я могу получить доступ к отдельным документам через URL / dbname / docname , и я могу указать свой веб-браузер в корне сайта и таким образом получить доступ к моим вложениям.

Теперь я хотел бы получить доступ к информации о самой базе данных, чтобы передать параметр с момента к _changes API.

  1. / dbname / работает нормально
  2. / dbname /? name = value не перенаправляет должным образом. В журнале Couch DB я вижу такие строки, как 'GET' /dbname/_design/..?name=value 404 , тогда как я ожидал увидеть 'GET' / dbname /? Name = значение 200 .

Второй случай необходим для Ajax из IE, где код jquery.couch.js добавляет фальшивую строку запроса, чтобы избежать кеширования.

Как я могу сформулировать фразу мои правила перезаписи, чтобы Couch DB правильно перезаписывал / dbname /? name = value ?

Edit: Чтобы уточнить, строки запроса работают нормально, пока в URL есть что-то после последнего /.

  • / dbname / docname? rev = xxx работает
  • / dbname / _changes? Since = 1 работает
  • / dbname /? _ = dummy не работает; он переписывается в / dbname / _design /..?_= dummy
12
задан Tim Robinson 21 February 2011 в 10:24
поделиться