Frage

Früher funktionierte der folgende Aufruf einwandfrei in einer Rails-App mit Ruby 1.8.7:

HTTParty.post("my uri", :body => "some body", :headers => { "Content-type" => "text/xml"})

Wenn ich dieselbe Zeile unter Ruby 1.9.2 ausführe, erhalte ich eine MultiXml::ParseError mit dieser Nachricht:

"xmlns: URI xyz is not absolute"

Der Aufruf meiner URI funktioniert einwandfrei, wenn ich Curl verwende, und ich erhalte die erwartete Antwort zurück, die etwa so aussieht:

<client login="foo" numsessions="1" xmlns="xyz"/>

Irgendwelche Erkenntnisse?

War es hilfreich?

Lösung

Nach langem Ringen habe ich dafür HTTParty aufgegeben.Ich habe Patron ausprobiert, das lokal funktionierte, aber nicht auf Heroku, und habe mich schließlich für RestClient entschieden, das großartig funktionierte. https://github.com/archiloque/rest-client

Andere Tipps

Das liegt daran, dass Curl nicht versucht, die XML-Dateien zu analysieren.Sie könnten entweder versuchen, sicherzustellen, dass Sie mit 1.9.2 dieselbe Version von httparty verwenden wie mit 1.8.7, oder die Verantwortlichen dieser URL bitten, die XMLNs gültig zu machen

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top