मुझे यकीन नहीं है कि सभी HTTP प्रॉक्सी एक ही तरीके से काम करते हैं, लेकिन मैं यूआरआई ftp://user:[email protected]/path पर संसाधन तक पहुंचने के लिए बस एक HTTP अनुरोध बनाकर धोखा देने में कामयाब रहा।
अफसोस की बात है, HttpWebRequest का एक उदाहरण बनाने के लिए आपको WebRequest.Create का उपयोग करना चाहिए। और यदि आप ऐसा करते हैं तो आप ftp: // schema के लिए HTTP अनुरोध नहीं बना सकते हैं।
var ctor = typeof(HttpWebRequest).GetConstructor(
BindingFlags.NonPublic | BindingFlags.Instance,
null,
new Type[] { typeof(Uri), typeof(ServicePoint) },
null);
var req = (WebRequest)ctor.Invoke(new object[] { new Uri("ftp://user:[email protected]/test.txt"), null });
req.Proxy = new WebProxy("myproxy", 8080);
req.Method = WebRequestMethods.Http.Put;
using (var inStream = req.GetRequestStream())
{
var buffer = Encoding.ASCII.GetBytes("test upload");
inStream.Write(buffer, 0, buffer.Length);
}
using (req.GetResponse())
{
}
तुम भी अन्य कार्यों के लिए "हटाएँ" जैसे अन्य तरीकों का उपयोग कर सकते हैं:
तो मैं एक गैर सरकारी निर्माता जो करता है कि आह्वान करने के लिए प्रतिबिंब का एक सा इस्तेमाल किया।
मेरे मामले में, यह एक आकर्षण की तरह काम करता था।
आपको यह सुनिश्चित करना आपकी कंपनी के लिए एक एफ़टीपी प्रॉक्सी भी नहीं है रहे हैं? – VVS
मुझे एक ही समस्या है। क्या आपको एक समाधान मिला? –
और यदि आपने किया, तो यह किस प्रकार का लाइसेंस था? एक स्रोत वितरण अच्छा होगा। –