में वैश्विक बचाव और लॉगिंग अपवाद अपवाद के मामले में मैं वैश्विक बचाव कैसे निर्दिष्ट करूं, और यदि आप एपीआई या एप्लिकेशन के लिए सिनात्रा का उपयोग करते हैं, तो आप लॉगिंग को कैसे संभालेंगे?सिनात्रा
सिनात्रा
उत्तर
404s not_found
विधि जैसे जैसे की मदद से नियंत्रित किया जा सकता:
not_found do
'Site does not exist.'
end
500s जैसे एक ब्लॉक के साथ त्रुटि विधि बुला, द्वारा नियंत्रित किया जा सकता है:
error do
"Application error. Pls try later."
end
का ब्यौरा त्रुटि sinatra.error
request.env
में इस तरह से पहुंचा जा सकता है:
error do
'An error occured: ' + request.env['sinatra.error'].message
end
मुझे अपने देव पर्यावरण में बॉक्स से बाहर काम करने में परेशानी हुई - इसे काम करने के लिए, मुझे show_exceptions
को मेरे sinatra कॉन्फ़िगरेशन में झूठ बोलना पड़ा।
class BaseApp < Sinatra::Base
configure { set :show_exceptions, false }
error do |err|
raise "Error: #{err}"
end
end
यह सेटिंग, जब सही पर सेट किया, त्रुटि पृष्ठों कि पश्व-अनुरेखन और पर्यावरण से संबंधित जानकारी दिखा एक unhanded अपवाद तब होता है जब सक्षम बनाता है, लेकिन मैं इसे अक्षम करके केवल आग कस्टम त्रुटियों सकता है।
देखें यह सही उत्तर है। यह कॉन्फ़िगरेशन लाइन के बिना काम नहीं करता है। – pmontrasio
दरअसल, सामान्य त्रुटि ब्लॉक (यानी, कोई अपवाद वर्ग या स्थिति कोड) निष्पादित करने और वापस करने के लिए दोनों ': show_exceptions' और ': raise_errors' अक्षम होना चाहिए (यानी, झूठी पर सेट)। –
ध्यान दें कि उदाहरण में 'त्रुटि' अपवाद का संदेश है, जिसे 'env [' sinatra.error '] द्वारा भी प्राप्त किया जा सकता है। संदेश'। –
- 1. सिनात्रा
- 2. सिनात्रा
- 3. सिनात्रा
- 4. सिनात्रा
- 5. सिनात्रा
- 6. सिनात्रा
- 7. सिनात्रा
- 8. सिनात्रा
- 9. सिनात्रा
- 10. सिनात्रा स्थितियां
- 11. अभी सिनात्रा
- 12. रूबी सिनात्रा
- 13. सिनात्रा ऐप
- 14. सिनात्रा आवेदन
- 15. मैं सिनात्रा
- 16. सिनात्रा मार्ग
- 17. सिनात्रा यूआरएल '/' व्याख्याएं
- 18. सिनात्रा के साथ देवता
- 19. सिनात्रा बनाम रेल
- 20. सिनात्रा उप-निर्देशिका दृश्य
- 21. क्रिया नास्तिक मिलान सिनात्रा
- 22. एक सिनात्रा ऐप
- 23. नए सिनात्रा ऐप
- 24. सिनात्रा विकल्प HTTP वर्ब
- 25. रैक :: टेस्ट और सिनात्रा
- 26. सिनात्रा और http डाल
- 27. सिनात्रा चर का दायरा
- 28. सिनात्रा ऐप जो पैरामीटर
- 29. सिनात्रा सर्वर पुश?
- 30. कौन सी लाइब्रेरी सिनात्रा
अगर यह 500 है तो अपवाद को पुनः प्राप्त करने के लिए मैं कैसे करूँ, मेरा मतलब है कि क्या गलत हुआ? धन्यवाद। – Jane
@Jane मेरा अद्यतन उत्तर – maprihoda