मुझे जेसन प्रतिक्रिया भेजने की आवश्यकता है इनपुट में उपयोगकर्ता दर्ज डेटा पर निर्भर करता है, लेकिन मैं सरल जेसन अनुरोध भेजने में विफल रहा हूं।रेल में सरल जेसन प्रतिक्रिया कैसे भेजें?
मैंने इस आलेख का पालन किया - http://paydrotalks.com/posts/45-standard-json-response-for-rails-and-jquery।
जोड़ा गया माइम प्रकार:
Mime::Type.register_alias "application/json", :jsonr, %w(text/x-json)
और मेरे नियंत्रक में:
:def checkname
respond_to do |format|
format.jsonr do
render :json => {
:status => :ok,
:message => "Success!",
:html => "<b>congrats</b>"
}.to_json
end
end
end
लेकिन स्क्रीन खाली है और यहाँ Fiddler2 से प्रतिक्रिया कोड जब मैं इस कार्रवाई के जवाब पाने की रचना की है
HTTP/1.1 406 Not Acceptable
Content-Type: text/html; charset=utf-8
X-UA-Compatible: IE=Edge
Cache-Control: no-cache
X-Request-Id: 14a8467908d9ce322d054607efdacf92
X-Runtime: 0.011000
Content-Length: 1
Connection: keep-alive
Server: thin 1.4.1 codename Chromeo
मैं क्या गलत कर रहा हूं?
क्या आप वाकई mime_types.rb के संस्करण के बाद आपके ऐप को पुन: प्रारंभ कर रहे हैं? और सुनिश्चित करें कि आप अंत में '.jsonr' के साथ url के माध्यम से अपनी कार्रवाई तक पहुंच रहे हैं, जैसे:' http: // localhost: 3000/checkname.jsonr'। – jdoe
@jdoe, हाँ। तुम सही हो। क्या आप यहां देख सकते हैं http://stackoverflow.com/questions/12382680/how-to-send-json-response-from-controller-to-jquery-and-inspect-it - यही कारण है कि मुझे जेसन अनुरोध भेजने की आवश्यकता है। – MID
जहां मैं सही हूँ? :) क्या आपने समस्या हल की है या यह अभी भी मौजूद है? मैंने आपके कोड की कोशिश की और अपने ब्राउज़र को 'http: // localhost: 3000/checkname.jsonr' पर इंगित करने के लिए मुझे JSON प्रतिक्रिया (एप्लिकेशन/जेसन) दिया। – jdoe