= हैकनी (HTTPost के माध्यम से) अनुरोध चलते समय परिणाम नहीं लौटाता। = नमस्ते, मेरे पास अमृत में लिखा एक साधारण चैट बॉट है। मेरा एक उपयोगकेस किसी विशेष यूआरएल पर कुछ प्रश्न भेजना है। मुझे उम्मीद थी कि क्वेरी सर्वर थोड़ा धीमा (कुछ सेकंड) प्रतिक्रिया देगा। मैंने अपना कोड लिखा है और मेरे मशीन कनेक्शन में क्वेरी कोड सामान्य रूप से चल रहा है। लेकिन जब मैंने अपने आवेदन को वीपीएस में तैनात किया, तो क्वेरी सिर्फ प्रतिक्रिया नहीं लौटाती, कोई त्रुटि या कोई संदेश नहीं यह थोड़े मुझे पागल कर देता है क्योंकि मेरे पास इसे डिबग करने का कोई तरीका नहीं है क्योंकि कॉल खुद ही अटक जाती है और अनिश्चित काल तक वापस नहीं आती है। कंटेनर में मैन्युअल रूप से चल रहा कर्ल काम करता है, आईईएक्स के अंदर अनुरोध चल रहा है जो चल रहे नोड को रिमोट करता है, लेकिन लाइव सिस्टम में यह काम नहीं करता है। कोई मेरी मदद कर सकता है शायद? नीचे प्रश्न में कोड का स्निपेट है: http_config = [ hackney: [pool: :tl], recv_timeout: 30_000, timeout: 30_000 ] with {:ok, body}<- जेसन.encodesrc"=>क्वेरी {: ठीक है, %HTTPoison.Response{body: body}}<- HTTPoison.post(url, body,http_config), {:ठीक है, परिणाम"=>परिणाम, "src_lang"=>src_lang}}<- जेसन.डिकोड(निकाय) का परिणाम समाप्त होता है |>आईओ.निरीक्षण(लेबल: :परिणाम) संपादित करें: मैंने प्रतिनिधित्व निरीक्षण रेखा को जोड़ा। कभी-कभी यह स्निपेट सामान्य रूप से चलता है कभी-कभी नहीं। जब मैंने इस कार्यक्रम को अपने मित्र के ब्लैक फ्राइडे डर्ट सस्ते समर्पित VPS में होस्ट किया तो उसे कभी भी यह समस्या नहीं हुई। लेकिन जब मैं वल्चर में गया तो यह समस्या है। मैंने एक और VPS प्रदाता पर भी कोशिश की है जिसका मैंने अतीत में उपयोग किया था (ramnode) और वही समस्या है पहली बात जो मुझ पर उछलती है, वह यह है कि आपके with कथन में कोई और खंड नहीं है, इसलिए आप यह नहीं पकड़ पाएंगे कि यह कहाँ विफल हो रहा है पर एक और और पैटर्न मिलान जोड़ने का प्रयास करें {: त्रुटि, कारण} टपल और इसे sth के साथ लॉग इन करने के लिए लिखें जैसे `Logger.error ("विफल http पोस्ट: # {निरीक्षण त्रुटि तब आपको यह देखने में सक्षम होना चाहिए कि यह विफल क्यों हो रहा है अनुलेख तैनाती सर्वर के बजाय स्थानीय मशीन (रिमोटिंग नोड चलाने) पर नेटवर्क कॉल किए जाने के कारण यह शायद आपके स्थानीय सिस्टम पर रिमोट खोल पर काम करता है। यह सुनिश्चित करने के लिए कि दूरस्थ सर्वर पर नेटवर्क कॉल हो रही है, दूरस्थ नोड (Node.spawn, उदा.) पर एक प्रक्रिया उत्पन्न करें जो http कॉल करती है आह, मुझे खेद है कि स्निपेट पूरी कहानी नहीं बताता है, लेकिन उसके बाद, इससे कोई फर्क नहीं पड़ता कि मेरे पास लॉगर लाइन है जो बताती है कि आदेश चलना समाप्त हो गया है, और अंत में यदि परिणाम {: त्रुटि, _ है } मैं इसे लॉग करता हूँ। लेकिन मेरे मामले में जो लाइन बताती है कि फ़ंक्शन समाप्त हो गया है, उसे कभी भी कॉल नहीं मिलता है, यह पोस्ट अनुरोध की तरह ही अटका हुआ प्रतीक्षा हाथ कभी वापस नहीं आया मैं रिलीज का उपयोग करता हूं, और मैं मौजूदा नोड से कनेक्ट करने के लिए तैनाती सर्वर पर रिलीज बाइनरी रिमोट चलाता हूं।