2014-12-09 1 views
14

ich den folgenden Code haben:Prevent Rails von Codierung der Et-Zeichen in einer URL, wenn JSON Ausgabe von

render json: { image: image } 

Bild hat ein Attribut "url". Sagen wir, es ist:

https://blah.com/a?A=B&C=D 

Beim Rendern, das ist, was ich bekommen:

{"image":{"url":"https://blah.com/a?A=B\u0026C=D"}} 

Die Ampersand wird als \ codiert bekommen u0026

Gibt es eine Möglichkeit, diese Codierung zu vermeiden?

+0

meine Antwort auf diese ähnliche Frage Siehe hier: http://stackoverflow.com/a/35020478/594763 – patrick

Antwort

23

in Ihre application.rb Datei:

config.active_support.escape_html_entities_in_json = false 
+0

Und vergiss nicht den Server neu zu starten nach :-) ..nice antwort! –

0
+2

Alle diese erklären, warum es passiert, aber nicht, wie das Problem zu lösen ist. Die URLs, die ich habe, sind für externe Ressourcen, nicht für meine App intern, also kann ich dieses Problem nicht lösen, indem ich die Routing-Helfer verwende, um URLs zu generieren. Und monkeypatching klingt wie eine sehr, sehr schlechte Idee. –

+0

Können Sie einen Teil Ihres Codes einfügen? Oder erkläre dein Problem mehr? Wo benutzt du diese Codes? ... – 01e