में DropBox REST API का उपयोग कर फ़ाइलों की प्रतिलिपि कैसे करें I ड्रॉपबॉक्स एपीआई का उपयोग कर ऑपरेटिंग फ़ाइल कॉपी को प्रबंधित नहीं कर रहा है। मैं अपने क्लाइंट को सफलतापूर्वक अधिकृत कर सकता हूं, फ़ाइलों को डाउनलोड और अपलोड कर सकता हूं। कॉपी ऑपरेशन को उपयोग करने के लिए POST विधि की आवश्यकता होती है और मुझे लगता है कि यह वह जगह है जहां मैं गलत अनुरोध करता हूं। मैं OAuth प्रमाणीकरण के लिए POST विधि को परिभाषित कर रहा हूं और अनुरोध पोस्ट करने के लिए इंडी TIdHTTP का उपयोग कर रहा हूं, लेकिन मुझे हमेशा त्रुटि कोड 403 प्राप्त होता है - अनुमति अस्वीकार कर दी गई है। https://www.dropbox.com/developers/reference/api#fileops-copyडेल्फी
यहाँ मेरी कोड का हिस्सा है::
यहाँ ड्रॉपबॉक्स एपीआई वर्णन है के रूप में मैं जानता हूँ कि जब Indy के साथ प्रयोग पैरामीटर संदेश के मुख्य भाग में कॉपी कर रहे हैं जहाँ तक
ParamStr := Format('root=%s&from_path=%s&to_path=%s', [Root, EncodeFileName(FromPath), EncodeFileName(ToPath)]);
URL := 'https://api.dropbox.com/1/fileops/copy' + '?' + ParamStr;
Consumer := TOAuthConsumer.Create(Key, Secret);
AToken := TOAuthToken.Create(fToken, fTokenSecret);
HMAC := TOAuthSignatureMethod_HMAC_SHA1.Create;
ARequest := TOAuthRequest.Create('');
try
ARequest.HTTPURL := URL;
ARequest.Method := 'POST';
ARequest := ARequest.FromConsumerAndToken(Consumer, AToken, '');
ARequest.Sign_Request(HMAC, Consumer, AToken);
Params := TStringList.Create;
try
Params.Text := ParamStr + '&' + ARequest.GetString;
HTTP.Post(URL, Params);
finally
Params.Free;
end;
एसएसएल के साथ इंडी का उपयोग करने के तरीके को देखने का प्रयास करें। मुझे यकीन है कि आप ओपनएसएसएल पुस्तकालयों को याद कर रहे हैं। – TLama
आपको क्या लगता है कि त्रुटि का अर्थ दस्तावेज अर्थ के अलावा कुछ भी है? "403: एक अमान्य प्रतिलिपि ऑपरेशन का प्रयास किया गया था (उदाहरण के लिए दिए गए गंतव्य पर पहले से ही एक फ़ाइल है, या एक साझा फ़ोल्डर को साझा फ़ोल्डर में कॉपी करना)।" –
@Tlama, एसएसएल पुस्तकालयों को भी अधिकृत नहीं किया जाएगा, अपलोड, अपलोड और संचालन डाउनलोड करने में हस्तक्षेप, जो माना जाता है कि काम कर रहे हैं? –