Какие разрешения мне нужно предоставить запустить RavendB в режиме сервера?
-
26-09-2019 - |
Вопрос
Я читаю через отличный блог Роб Аштона в RavendB:http://codeofrob.com/archive/2010/05/09/ranavendb-an-intRoduction.aspx.
И я работаю по коду, как я читаю. Но когда я пытаюсь добавить индекс, я получаю ошибку 401. Вот код:
class Program
{
static void Main(string[] args)
{
using (var documentStore = new DocumentStore() { Url = "http://localhost:8080" })
{
documentStore.Initialise();
documentStore.DatabaseCommands.PutIndex(
"BasicEntityBySomeData",
new IndexDefinition<BasicEntity, BasicEntity>()
{
Map = docs => from doc in docs
where doc.SomeData != null
select new
{
SomeData = doc.SomeData
},
});
string entityId;
using (var documentSession = documentStore.OpenSession())
{
var entity = new BasicEntity()
{
SomeData = "Hello, World!",
SomeOtherData = "This is just another property",
};
documentSession.Store(entity);
documentSession.SaveChanges();
entityId = entity.Id;
var loadedEntity = documentSession.Load<BasicEntity>(entityId);
Console.WriteLine(loadedEntity.SomeData);
var docs = documentSession.Query<BasicEntity>("BasicEntityBySomeData")
.Where("SomeData:Hello~")
.WaitForNonStaleResults()
.ToArray();
docs.ToList().ForEach(doc => Console.WriteLine(doc.SomeData));
Console.Read();
}
}
}
Это бросает ошибку 401, когда на линии, которая делает вызов PUTINDEX (). Любые идеи, какие разрешения мне нужно подать заявку? И где мне нужно их применить?
Решение
Что вы подразумеваете под режимом сервера? Вы имеете в виду просто выполнять Raven.server?
Мне не пришлось делать ничего особенного клиента, чтобы получить это для работы, хотя мне пришлось запустить raven.server с повышенными привилегиями, потому что я не уверен, что код просить соответствующие разрешения довольно работает как предназначен. (На самом деле, я подниму запрос об этом в списке рассылки)
Вы не должны получать ошибку 401, если вы не изменили конфигурацию Raven.Server.
Если вы запускаете сервер, вы можете просмотреть его непосредственно с помощью URL-адреса, указанного в конфигурации (localhost: 8080 по умолчанию) - убедитесь, что он на самом деле работает и работает как предназначено, прежде чем продолжить с помощью устранения неполадок