में मैं एक यूआरआई ऑब्जेक्ट में योजना कैसे सेट कर सकता हूं, मैं उपयोगकर्ता इनपुट से यूआरआई को पार्स करने की कोशिश कर रहा हूं। मुझे लगता है कि कुछ उपयोगकर्ता इस योजना को अपने यूआरआई में नहीं डालेंगे और मैं "http" में डिफ़ॉल्ट करना चाहता हूं।रूबी
निम्नलिखित कोड काम नहीं करता:
require 'uri'
uri_to_check = URI::parse("www.google.com")
uri_to_check.scheme = "http" unless uri_to_check.scheme
puts uri_to_check.to_s
मैं "http://www.google.com" देखने की उम्मीद है, लेकिन मैं मिलता है "http: www.google.com"। क्या यह इस तरह से करना संभव है?
यदि हां, तो मुझे क्या याद आ रही है?
क्या ऐसा करने का कोई बेहतर तरीका है?
+1। आपके विशेष उपयोग के मामले के लिए, आप 'पता योग्य :: URI.heuristic_parse' को देखना चाहते हैं, जो * विशेष रूप से * मामले के लिए लक्षित है, जहां जानबूझकर छोड़कर यूआरआई से कुछ जानकारी वास्तव में गायब हो जाती है। –
पता योग्य :: URI.heuristic_parse वही है जो मैं ढूंढ रहा हूं। धन्यवाद! – maz
सहमत .. टिन मैन क्या कहता है सच है, लेकिन असली दुनिया के मामले के मामले (या कम से कम, सवाल विशेष रूप से क्या संदर्भित करता है) के लिए, 'पता योग्य :: URI.heuristic_parse' की आवश्यकता है। – hlascelles