0
我有一個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
這是否只涉及網頁API?我沒有真正使用MVC。這只是在點擊按鈕時調用 – prawn
不確定隊友,只是想強調授權和身份驗證是兩個單獨的事情。它可能與文件夾權限有關。檢查http://forums.asp.net/t/1165237.aspx中的答案,因爲它可能有幫助(尤其是子代碼和權限)。 – JuStDaN