Ich versuche, eine Datei zu Dropbox mit der HTTP-API mit C# hochzuladen. Mit der Dropbox-Dokumentation kann ich dies leicht mit cURL tun, aber ich habe Probleme damit, das in C# funktionieren zu lassen.Zugriff auf Dropbox API v2 HTTP mit C#
cURL-Anweisung aus der Dropbox Dokumentation
curl -X POST https://api.dropboxapi.com/2/files/save_url \
--header "Authorization: Bearer abc123" \
--header "Content-Type: application/json" \
--data "{\"path\": \"/a.txt\",\"url\": \"http://example.com/a.txt\"}"
Mein aktueller C# Befehl
string URI = "https://api.dropboxapi.com/2/files/save_url";
string myParameters = "path=/a.txt&url=http://example.com/a.txt";
using (WebClient wc = new WebClient())
{
wc.Headers[HttpRequestHeader.ContentType] = "application/json";
wc.Headers[HttpRequestHeader.Authorization] = "Bearer abc123";
string HtmlResult = wc.UploadString(URI, myParameters);
}
des Lauf erhalte ich ein HTTP 400 Bad Request vom Server.
sein Warum 'myParameters' JSON ist nicht wahr? –
Also habe ich myParameters so geändert, dass es wie folgt aussieht: string myParameters = "{'path': '/a.txt','url': 'http://example.com/a.txt'}"; 'Aber trotzdem HTTP-Fehler erhalten 400 – Simbady
Da JSON doppelte Anführungszeichen erfordert. –