CouchDB _session не возвращает cookie - PullRequest
0 голосов
/ 11 октября 2018

Среда:

  • CouchDB 2.2.0, запущенный в VirtualBox, с обновленным образом Debian.Тип сети мостовой, все порты открыты, нет https.

  • Приложение Vue3.js (не использует никаких функций Vue для доступа к БД)

  • Пакет JS для удаленного доступа:

    • axios
    • выборка

Браузер: последняя версия Chrome

Соответствующие настройки CouchDB local.ini

[couch_peruser]
enable = false
delete_dbs = false

[chttpd]
port = 5984
require_valid_user = false
proxy_use_secret = false
bind_address = 0.0.0.0
authentication_handlers = {chttpd_auth, cookie_authentication_handler}, {chttpd_auth, default_authentication_handler}

[httpd]
bind_address = 127.0.0.1
enable_cors = true

(default authentication handlers set in default.ini)
authentication_handlers = {couch_httpd_auth, cookie_authentication_handler}, {couch_httpd_auth, default_authentication_handler}

[couch_httpd_auth]
secret = (hash num)
require_valid_user = false
allow_persistent_cookies = true


[cors]
origins = *
headers = accept, authorization, content-type, X-Auth-CouchDB-UserName, origin, referer
credentials = true
methods = GET, PUT, POST, HEAD, DELETE

Что происходит

Если я выполняю запрос с помощью curl, я получаю cookie в ответе.

Вот вызов curl:

curl -v http://couchman.lcldev:5984/_session \
  -H "Content-Type:application/json" \
  -H "X-Auth-CouchDB-UserName:<uname>" \
  -d '{"name":"<uname>","password":"<passwd>"}'

А вот ответ:

< HTTP/1.1 200 OK
< Cache-Control: must-revalidate
< Content-Length: 47
< Content-Type: application/json
< Date: Wed, 10 Oct 2018 21:16:10 GMT
< Server: CouchDB/2.2.0 (Erlang OTP/19)
< Set-Cookie: (cookie info)
<
{"ok":true,"name":"<name>","roles":["<roles>"]}

Yay.Я получаю печенье.

Но если я вызываю его из моего приложения (с помощью fetch или axios ), я получаю только эти заголовки:

Response headers: 
  cache-control,must-revalidate
  content-type,application/json
  server,CouchDB/2.2.0 (Erlang OTP/19)

Нет Set-Cookie header.

Итак, что случилось?Чего мне не хватает?

1 Ответ

0 голосов
/ 11 октября 2018

Ответил в первом комментарии - см. Ветку для дополнительной информации.

...