我无法使用Admin在CouchDB 3.x中创建数据库

问题描述 投票:0回答:1

仅在Windows计算机中安装了ouchdb 3.00版本,并配置为单节点。

即使在安装后也要在安装中定义管理员。定义后重新启动了ouchDB。

我的管理员出现在用户界面中:enter image description here

但是当我尝试通过shell脚本创建数据库时,它会响应:

enter image description here

我绝对确定我的密码正确。

我想知道我是否犯了错误或错误。

powershell couchdb couchdb-3.x
1个回答
0
投票

该问题与CouchDB无关,而是与Invoke-WebRequest允许的身份验证方法有关。

虽然我找不到任何明确声明支持URL凭据的文档,但确实在PowerShell文档中找到了are支持的身份验证方法的列表:

-身份验证

指定用于请求的显式身份验证类型。默认为无。身份验证不能与UseDefaultCredentials。可用的身份验证选项:

:未提供身份验证时,这是默认选项;不使用显式身份验证。

Basic:需要凭据。凭证在RFC 7617基本身份验证标头中以以下格式发送:base64(user:password)。

Bearer:需要令牌。发送RFC6750授权:带有提供的令牌的Bearer标头。这是一OAuth的别名

OAuth:需要令牌。发送RFC 6750授权:带有提供的令牌的承载头。这是一个别名持票人

我将以上解释为您正在使用的身份验证方法

不支持。

] >>这是一个使用基本身份验证的示例,它肯定是执行任务的数百种方法之一。 # setup variables to form a HTTP Basic Authorization $uid = "<username>" $pwd = "<password>" # Convert the Basic credentials to bytes $atob = [System.Text.Encoding]::UTF8.GetBytes($uid +":" + $pwd) # To Base64 encoding $auth = "Basic " + [System.Convert]::ToBase64String($atob) # Create the database Invoke-WebRequest -Method PUT -Url http://127.0.0.1:5964/abc -Headers @{"Authorization"=$auth}

FWIW,cURL允许轻松进行内联URL http身份验证,但这不是一个选择。

以上代码从有关基本身份验证的SO Q/A答案中借用。

1 PowerShell Documentation Version 7

© www.soinside.com 2019 - 2024. All rights reserved.