2016-07-06 7 views
1

Ich verwende eine API, um eine XML-Datei herunterzuladen und zu lesen, was perfekt funktioniert.XML-Datei die ich an die API sende, wird verschlüsselt, wie kann das verhindert werden?

Jetzt möchte ich etwas hinzufügen und eine neue Version dieser XML-Datei hochladen, aber es wird codiert und man kann es nicht mit einem XML-Reader lesen. Es sieht wie folgt aus:

% 3C% 3Fxml% 20version% 3D% 221,0% 22% 3F% 3E% 0D% 0A% 3C

ich ich weiß, könnte es HttpUtility.UrlDecode nur kodieren verwenden, aber ich hätte gerne eine bessere lösung, weil das XML so auf dem server gespeichert wird, was ich nicht will.

Hier ist der Code, den ich verwende, um die Anfrage zu senden:

string test = xmlFile.Insert(index, topic); 
// byte[] bytes = Encoding.Default.GetBytes(test); 
// test = Encoding.UTF8.GetString(bytes); 

MessageBox.Show(test); 

IConsumerRequest getFileRequest = consumerSession 
    .Request() 
    .ForMethod("PUT") 
    .ForUri(new Uri(apiEndpoint + "/1/documents/" + documentid + "/upload")) 
    .WithBody(test) 
    .SignWithToken(accessToken); 

string getFileResponse = getFileRequest.ToString(); 

ich die DevDefined.OAuth.Framework verwenden.

Antwort

0

Verstanden, tun musst es wie folgt aus:

IConsumerRequest getFileRequest = consumerSession 
    .Request() 
    .ForMethod("PUT") 
    .ForUri(new Uri(apiEndpoint + "/1/documents/" + documentid + "/upload")) 
    .WithRawContent(test, Encoding.UTF8) 
    .WithRawContentType("text/xml") 
    .SignWithToken(accessToken); 
Verwandte Themen