तक पहुंच नहीं मिल सकता है, मैंने माइक्रोसॉफ्ट OneDrive API
को कनेक्ट करने और फ़ाइलों और फ़ोल्डरों को सूचीबद्ध करने के लिए Perl
में यह सरल कोड बनाया है। लेकिन अब मैं टोकन तक पहुंचने पर रोक लगा हूं।पर्ल में माइक्रोसॉफ्ट वनड्राइव एपीआई क्लाइंट को टोकन
मैंने Microsoft's documentation को खोजने के लिए पढ़ा, लेकिन मुझे कुछ भी नहीं मिला।
#!/usr/bin/perl -w
use strict;
use LWP; use LWP::UserAgent;
my $client_id = '...';
my $client_secret = '...';
my $client_agent = 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/38.0.2125.104 Safari/537.36'; # whatever
my $ua = new LWP::UserAgent;
$ua->->show_progress(1); # Microsoft use url redirection and I want to see the steps
$ua->agent($client_agent);
$ua->timeout(30);
my $URL = 'https://login.live.com/oauth20_desktop.srf'; # from documentation
my @params = (
"client_id=".$client_id,
"scope=onedrive.readonly",
"response_type=token",
"redirect_uri=https://login.live.com/oauth20_desktop.srf"
);
my $URLFULL = $URL."?".join("&", @params);
my $res = $ua->get($URLFULL);
if ($res->is_success) {
print $res->request->uri->as_string."\n"; # it should be the url with a valid token
my $block = $res->as_string;
print $block; # this is the full response
} else {
die ($res->as_string."error in loading page");
}
तो मैं यूआरएल के लिए एक GET
संदेश भेजने और यह यूआरएल क्या पहुँच टोकन को रोकने के लिए पुन: निर्देशित किया जाना चाहिए:
यहाँ कोड है। लेकिन मैंने उसी यूआरएल पर रीडायरेक्ट किया जिसे मैंने बुलाया।
मैं एक्सेस टोकन कैसे प्राप्त कर सकता हूं? या मेरे कोड में गलती कहां है? या क्या कोई कामकाजी उदाहरण है?
अगर तुम सिर्फ चिपकाया, ऐसा लगता है कि आप लिखने में कोई त्रुटि है: '" client_id = "$। clien_tid, ' – bolav
धन्यवाद, – netdjw
फिक्स्ड के लिए, यदि आप कोई अनुरोध कर रहे हैं तो मुझे लगता है कि इसे आपके कोड में डालने से पहले मोज़िला पर आरईएसटी के साथ परीक्षण करना बुद्धिमान है। – robel