web-dev-qa-db-ja.com

エラー:リモートサーバーがエラーを返しました:(401)Unauthorized

インターネットの写真を取得してWordに挿入したいです。

私はこのコードを使用します。

MainDocumentPart mainPart = wordprocessingDocument.MainDocumentPart;
System.Net.WebRequest request = 
    System.Net.HttpWebRequest.Create("http://spsdev2:1009");

System.Net.WebResponse response = request.GetResponse();
ImagePart imagePart = mainPart.AddImagePart(ImagePartType.Jpeg);
//Send an HTTP request and get the image at the URL as an HTTP response
HttpWebRequest myReq = (HttpWebRequest)WebRequest.Create(fileName);
WebResponse myResp = myReq.GetResponse();

//Get a stream from the webresponse
Stream stream = myResp.GetResponseStream();

MyReq.GetResponse();でエラーが発生します。

エラー:リモートサーバーがエラーを返しました:(401)Unauthorized。

編集

このコードは私のために働く:)

myReq.UseDefaultCredentials = true;

myReq.PreAuthenticate = true;

myReq.Credentials = CredentialCache.DefaultCredentials;
21
ar.gorgin

HttpWebRequestの資格情報を追加します。

myReq.UseDefaultCredentials = true;
myReq.PreAuthenticate = true;
myReq.Credentials = CredentialCache.DefaultCredentials;
36
ar.gorgin

DefaultCredentialsを渡すのではなく、サイトの資格情報を提供するべきではありませんか?

request.Credentials = new NetworkCredential("UserName", "PassWord");のようなもの

また、request.UseDefaultCredentials = true; request.PreAuthenticate = true;

9
Dante