c#如何解决Web客户端上传文件时远程服务器返回错误:(405)Method Not Allowed."
本文关键字:错误 返回 服务器 Method Not Allowed quot 解决 何解决 Web 客户端 | 更新日期: 2023-09-27 18:05:07
你好,我想上传一个html文件,是在我的本地到一个远程文件夹的服务器,其中包含一个数据目录与geoserver元素,这里是我的代码:
public void CopyWS(string SourcePath, string DestinationPath)
{
try
{
string SourcePath = Path.GetFullPath("Result.html");
string DestinationPath = @"http://xx.xx.xxx.:8080/geoserver/rest/workspaces/";
string authInfo = "admin:geoserver";
WebClient client = new WebClient();
client.Headers["Authorization"] = "Basic " + Convert.ToBase64String(Encoding.ASCII.GetBytes(authInfo));
client.UploadFile(DestinationPath, "PUT", SourcePath);
}
catch (Exception e)
{
MessageBox.Show(e.Message);
}
我得到以下错误"错误405方法不允许"。我正在尝试不同的方法,如post而不是put,但我得到同样的错误。
EDIT:有人认为这可能是一个安全问题吗?对于UploadData,我得到相同的错误
EDIT:经过长时间的测试不同的方法(UploadDatat即)我总是得到相同的错误。我一直在搜索和阅读这方面的资料,但没有找到任何真正有用的东西。
EDIT:知道吗?
Thanks in advance
PUT
未配置…通常PUT
(但并不总是)意味着服务器理解WebDAV
…HTTP
上传通常通过POST
完成…
另一种可能是一些代理阻止PUT
。
编辑-按注释:
POST请求需要以不同的方式构建,并取决于服务器如何期望它们…有关示例代码,请参见使用HTTPWebrequest (multipart/form-data)上传文件