Webclient - Uploadfile

26/08/2008 - 10:20 von Anton Hengg | Report spam
Hallo Zusammen,

kann mir hier bitte jemend helfen?

Hier bekomme ich immer die Fehlermeldung '404 nicht gefunden'
Wenn es bereits eine Datei mit dem Namen test.pdf gibt làuft das Programm,
die Datei wird aber nicht überschrieben.

Das gleiche Beispiel mit web.DownloadFile (bzw. die andere Richtung)
funktioniert einwandfrei.

Was mache ich hier noch falsch?


Dim web As New WebClient
Dim mycache As New CredentialCache
Dim address As String =
"https://webintern:9958/WorkBookUpload/test/test.pdf"

mycache.Add(New Uri("https://webintern:9958"), "Basic", New
NetworkCredential("xxxx", "xxxxx"))
Dim fileName As String = "C:\\Temp\\test.pdf"
Try
ServicePointManager.ServerCertificateValidationCallback = AddressOf
TrustAllCertificateCallback
web.Credentials = CredentialCache.DefaultCredentials
web.Credentials = mycache
web.UploadFile(New Uri(address), fileName)
MsgBox("Upload Fertig")
Catch ex As Exception
MsgBox("Upload geht nicht" & vbNewLine & ex.Message)
End Try


Gruss
Anton
 

Lesen sie die antworten

#1 Christoph Schneegans
26/08/2008 - 10:31 | Warnen spam
Anton Hengg schrieb:

Hier bekomme ich immer die Fehlermeldung '404 nicht gefunden'
Wenn es bereits eine Datei mit dem Namen test.pdf gibt làuft das
Programm, die Datei wird aber nicht überschrieben.



Laut <http://msdn.microsoft.com/en-us/library/ms144229(VS.80).aspx>
verwendet WebClient.UploadFile die POST-Methode, wenn es mit einer
HTTP-Ressource arbeitet. POSTen kann man natürlich nur an eine
Ressource, die es bereits gibt, und eine vorhandene Ressource
überschreiben kann man so auch nicht.

AFAICS kannst du hier die WebClient-Klasse nicht verwenden.
HttpWebRequest zusammen mit

.Method = WebRequestMethods.Http.Put

funktioniert erfahrungsgemàß.

Keine Ahnung, warum .UploadFile praktisch dasselbe tut wie .UploadData,
wenn man es mit einer HTTP-Ressource verwendet. Bei FTP-Ressourcen
tut .UploadFile ja das Gewünschte.

<http://schneegans.de/web/xhtml/> · Klare Antworten zu XHTML

Ähnliche fragen