У меня есть приложение asp.net, которое отправляет файлы в библиотеку документов sharepoint. Каждый раз, когда он пытается отправить мне получитьПолучение 401 Несанкционированная ошибка при загрузке файла
The remote server returned an error: (401) Unauthorized
Вот C# код
byte[] buffer = new byte[length];
postedFile.InputStream.Read(buffer, 0, length);
Uri address = new Uri(url);
HttpWebRequest request = WebRequest.Create(address) as HttpWebRequest;
request.Method = "POST";
request.UseDefaultCredentials = true;
request.Accept = "application/json;odata=verbose";
request.Headers.Add("X-RequestDigest", dvalue);
request.ContentType = "application/json; charset=utf-8";
request.ContentLength = length;
using (Stream postSTream = request.GetRequestStream())
{
postSTream.Write(buffer, 0, length);
}
using (HttpWebResponse response = request.GetResponse() as HttpWebResponse)
{
StreamReader reader = new StreamReader(response.GetResponseStream());
}
Это прекрасно работает на моей локальной машине, но когда я развернуть его в нашей тестовой среде, возникает 401. IIS настроен для анонимной аутентификации. Я думаю, что это связано с загрузкой файла? Любые идеи или мысли оценены!
Благодаря
Вы включили анонимную аутентификацию, которая работает по назначению, но действие, которое вы пытаетесь выполнить, может быть несанкционированным. Это может помочь - http://www.asp.net/web-api/overview/security/authentication-and-authorization-in-aspnet-web-api – JuStDaN
Это связано только с веб-апи? Я не использую MVC. Это просто вызывается нажатием кнопки – prawn
Не уверенный помощник, просто хотел подчеркнуть, что авторизация и аутентификация - это две отдельные вещи. Возможно, это связано с разрешениями на папку. Проверьте ответ на http://forums.asp.net/t/1165237.aspx, поскольку это может быть полезно (в частности, подкоды и разрешения). – JuStDaN