6

पर संग्रहीत संपत्ति के लिए खुला पेपरक्लिप यूआरएल मेरे पास एसडी से पुनर्प्राप्त एक डाउनलोड करने योग्य ऑब्जेक्ट के साथ क्लाइंट की सेवा करने के लिए मेरे दस्तावेज़ नियंत्रक को डाउनलोड एक्शन पर कॉल है। हालांकि ओपनुरि को यूआरएल पेपरक्लिप को पार्स करने में परेशानी हो रही है। यह यूआरएल ब्राउज़र में किसी भी मुद्दे के बिना देखने योग्य है, लेकिन जब इसे नियंत्रक में खोलने का प्रयास किया गया तो मुझे 403 निषिद्ध त्रुटि मिलती है। , OpenURI :: HTTPError 403 निषिद्ध कार्रवाई की पहली पंक्ति पर ऊपर की शूटिंग जब URL खोला जाता है -ओपनयूआरआई :: HTTPError 403 निषिद्ध - S3 (कोहरे मणि)

documents_controller 

    def download 
    data = open(Document.find(params[:id]).upload.url) 
    send_data data.read, :type => data.content_type, :x_sendfile => true 
    end 

एक उदाहरण यूआरएल होगा

"https://s3.amazonaws.com/mybucket/documents/1/Screen_Shot.png?1372238888" 

में त्रुटि। कोई विचार यह क्या हो सकता है?

उत्तर

4

एक 403 त्रुटि तब हो सकती है जब URL स्ट्रिंग प्रारूप में नहीं है। मेलिंग संलग्नक के लिए एक समान उदाहरण में स्ट्रिंग इंटरपोलेशन का उपयोग करना मेरे लिए काम करता है:

doc = order.document 
attachments["Order.pdf"] = File.read(open("#{doc}")) 
संबंधित मुद्दे