gpt4 book ai didi

c# - IIS 7.5 - Windows Server 2008 - 文件上传 405 错误。代码在 windows 2003 服务器中工作

转载 作者:行者123 更新时间:2023-11-30 18:27:09 26 4
gpt4 key购买 nike

我遇到了以下代码在 Windows 2003 机器上工作的问题,现在我们升级到 2008 并且它不再工作。当代码到达 getResponse() 时,它给我一个 405 错误。

我正在通过 IIS 写入虚拟目录。
我也试过把它变成一个应用程序,但没有任何区别。我们没有安装/启用 webdav。

我到处搜索,似乎找不到允许我写入文件的正确解决方案。

我已经包含了用于上传文件的基本代码...

saveLocation.Length = 0;
saveLocation.Append(Path.GetFileName(files[0]));

inStream = File.Open(files[0], FileMode.Open);
HttpWebRequest myWebRequest = (HttpWebRequest)WebRequest.Create("http://localhost/kw/archive/testFile.pdf");

myWebRequest.ContentType = contentType;
myWebRequest.Method = "put";
//myWebRequest.Headers.Add("action", "put");
myWebRequest.Headers.Add("filename", saveLocation.ToString());
myWebRequest.ContentLength = inStream.Length;

dataToRead = (int)inStream.Length;
outStream = myWebRequest.GetRequestStream();

while (dataToRead > 0) {
if (Response.IsClientConnected) {
length = inStream.Read(buffer, 0, 10000);
outStream.Write(buffer, 0, length);
buffer = new Byte[10000];
dataToRead = dataToRead - length;
}
else {
dataToRead = -1;
}
}

HttpWebResponse myWebResponse = (HttpWebResponse)myWebRequest.GetResponse();

myWebResponse.Close();
inStream.Close();
outStream.Close();

更新:我目前收到 405 错误。

最佳答案

405 错误意味着方法不允许。在上面的代码中,您使用的是“PUT”方法,我认为 IIS 中不允许使用此方法。尝试启用它然后检查它。如果您知道如何启用它而不是尝试它,如果您不知道如何启用它,请检查此 link .我希望这能解决您的问题。

关于c# - IIS 7.5 - Windows Server 2008 - 文件上传 405 错误。代码在 windows 2003 服务器中工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27237898/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com