2016-07-05 5 views
0

Ich versuche, eine Verbindung zu einem Unternehmen Web-Service, aber ich bekomme einen BadRequest-Wert zurückgegeben. Ich nehme an, das ist kein großes Problem, und ich frage nicht nach Hilfe, wie ich die schlechte Anfrage beheben kann. Das Problem, auf das ich stoße, ist, wie man mehr darüber erfährt, was es verursacht. Also habe ich diese HttpResponseMessage Klasse Variable:Wie bekomme ich mehr Details über eine BadRequest von HttpResponse

HttpResponseMessage response = c.Post(address, content); 
//...fill in content 
response = cAssessments.Post(addressInfo, content); //return "Bad Response" 

ich es mit dem richtigen Inhalt zu ihren Servern abzuschicken, und ich wieder 400 Antwort besagt, „Bad Request“. Meine Frage ist, wie ich tiefer in diese Antwortvariable eingrabe, um genau zu sehen, was sie verursacht. Ich vermute, dass es eine gewisse Abhängigkeit von dem Service gibt, den ich treffe, um Informationen zu liefern, also werde ich davon ausgehen, dass es irgendwo da ist. Aber was sind Dinge in dieser Variable, die ich untersuchen sollte? Zum Beispiel:

"response.StatusCode" gibt mir den 400-Code. Welche anderen Eigenschaften kann ich untersuchen?

Jede Hilfe wird geschätzt.

Antwort

0

Den Inhalt der BadRequest Antwort mit ein paar nützlichen Tipps oder Informationen zu füllen, was möglicherweise schief gehen könnte, hängt vollständig vom Webdienst ab, der die Antwort liefert. Du kannst nichts von Deiner Seite tun.

0

Probieren Sie den Inhalt selbst aus, auch die URL der ursprünglichen Anfrage.

Abhängig von der API, für die Sie eine Anfrage stellen, können sie angeben, was die 400 im Inhalt der Antwort verursacht hat.

Auch das Format, das Sie es in (json vs xml vs was auch immer)

0

Es hängt alles davon ab, was der Dienst zurückkehrt anfordern. Um zu überprüfen, dass können Sie die Antwortstream lesen:

using (var stream = response.GetResponseStream()){ 
    using (var reader = new StreamReader(stream, Encoding.UTF8) 
    { 
     var text = reader.ReadToEnd(); 
     // text contains your info 
    } 
} 

Eine weitere nützliche Option für das Debuggen ist mit so etwas wie postman, wo Sie in Ihrer Anfrage und sehen Sie die vollständige Antwort sofort

einfügen Wenn die Antwort doesn Es gibt keine nützlichen Informationen, aber Sie sind festgefahren. Sie können nichts dagegen tun.

Verwandte Themen