[英]C# REST Webclient input type
我已经编写了一个小应用程序来测试与我编写的Web服务的连接。 我的问题是,我不知道top如何更改输入类型的名称。
我的Web服务看起来像这样
if ($_FILES["datei"]["error"] == UPLOAD_ERR_OK)
{
$tmp_name = $_FILES["datei"]["tmp_name"];
$name = $_FILES["datei"]["name"];
move_uploaded_file($tmp_name, $this->uploads_dir."$name");
return $this->uploads_dir.''.$name;
}
我可以从网络浏览器中调用它,一切正常。
<form action="index.php?action=upload" method="post" enctype="multipart/form-data">
<input type="file" name="datei"><br>
<input type="submit" value="Hochladen">
</form>
但是如果我从我的C#代码中尝试它,将变得困难
public static void UploadFilesToRemoteUrl(string url, string datei)
{
System.Net.ServicePointManager.Expect100Continue = false;
WebClient wc = new WebClient();
byte[] arr = wc.UploadFile(url,"post",datei);
System.Text.ASCIIEncoding enc = new System.Text.ASCIIEncoding();
string sr = enc.GetString(arr);
MessageBox.Show(sr);
}
上面的代码无法直接运行。 我发现当我将<input type="file" name="datei">
更改为< input type="file" name="file">
,它将起作用。
在这里,我的问题可以解决C#中的此问题,从而不必更改PHP代码吗?
我认为这是一个非常简单的问题,但是我对Web开发并不那么熟悉,谢谢。
我建议您使用提琴手( http://fiddler2.com/ )查看您通过网络发送的内容。 您应该比较浏览器发送的消息(工作正常)和C#中测试应用程序发送的消息。
一旦知道HTTP消息的哪个文件是错误的,就可以尝试在wc对象中更正它。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.