下面的代码用于在 couchDB 中创建数据库:
private async void DatabaseCreate()
{
if (!await DatabaseExist())
{
var contents = new StringContent("", Encoding.UTF8, "text/plain");
this.uri = "http://USER:PASSWORD@localhost:5984/item_sn";
var response = await client.PutAsync(this.uri, contents); //set the contents to null but same response.
Console.WriteLine(response.Content.ReadAsStrifngAsync().Result);
}
}
我的问题是它给我一个 StatusCode:401 的响应,说“未经授权”。我尝试在终端中 curl 它,它给了我一个成功的响应。我需要为 httpclient 设置一些先决条件吗?或者我使用了错误的方法。我知道有一些用于 couchDB 的第三方软件包,但就我而言,我只想使用 C# 的 httpclient。
提前致谢
curl 命令:
curl -X PUT http://USER:PASSWORD@localhost:5984/item_sn
最佳答案
看起来在 HttpClient 类中,您可以包含带有 HttpClientHandler Class 的凭据及其Credentials property 。看看这个answer 。尝试一下,也许会有效。
关于c# - httpclient c# couchdb 未经授权创建数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50635319/