![]() |
1
3
您试图写入的服务器URL是图像,而不是服务:
你不能只把一个文件(通过HTTP)写到那样的web服务器上。接收URL需要是一个设计为接受传入字节流的web服务。 我相信有更好的例子,但试试看 this link |
![]() |
2
1
代码的另一个问题是您根本没有尝试编写该文件。 这句话跟你想的不一样:
让我把它分解一下。我想你有。HTTPMETHOD允许您设置是执行post还是get。可能你想做一个HttpPost。最后一项不是用来推送文件内容的。它更像是一个状态变量,因此您可以跟踪请求(稍后将详细介绍)。 在Silverlight中,HTTP堆栈的工作方式是一切都是异步的。因此,在您的案例中,您正在设置一个请求,然后告诉运行时您想向该请求写入一些数据。你的电话就是这么做的。它发出并设置为允许您发出请求(这可能都发生在后台线程上,而不是UI更新的线程上)。一旦设置好,它将用一个流调用回调事件,您可以对其进行写入。它返回给您的其中一件事是状态变量(UserToken),它使您能够知道它用哪个请求响应您(这意味着您可以同时将多个文件发送回服务器)。 它还将公开一些其他事件,您可以使用这些事件来查看是否一切正常(比如您可以从您的调用中获得响应,并查看状态代码是什么——它将告诉您是否一切都成功)。顺便说一句,每次回调它都会发送UserToken变量,这样你的应用程序就可以跟踪哪个请求被响应了(如果现在有多个请求在响应)。 最后一个家伙提供的链接应该能帮到你。他也是对的,您需要服务器设置上的一些东西来响应请求,或者您通常希望这样做。你可以设置一个文件夹,让你把数据直接推到它,但老实说,你不想这样做,因为你会打开你的服务器黑客利用。 |