2013-04-01 13 views
5

Używam WWW :: Mechanize. Dla metod, które nie wymagają uwierzytelnienia, mam ci jak bym jakiegokolwiek innego adresu URL, a następnie użyć Perl JSON do analizowania danych z co chcę:Jak uzyskać dostęp do uwierzytelnionych metod API StackExchange API ze skryptu perl?

my $response = $mech->get('http://api.stackexchange.com/1.1/questions?fromdate=' . $lasthour) 
my $q = from_json($response->content()) 

Użyłem Mechanize aby zalogować się na stronach internetowych w przeszłości, ale rzeczy Oautha są mylące, a co sugeruje, że jest przeznaczone dla aplikacji internetowych (które wymagają rejestracji w StackExchange?).

W szczególności interesuje mnie notifications method, chociaż oczekiwałbym poprawnego kodu, który umożliwiłby dostęp do dowolnej z metod wymaganych przez auth.

+0

ok, czy rejestrujesz swoją aplikację? musisz to zrobić, aby użyć metod auth. – gaussblurinc

+0

Mam teraz. Co następne? Odpowiedź z "to zadziała tylko po rejestracji", a instrukcje byłyby mile widziane, wznowiłbym to. –

+0

oh, nie jestem pewien, czego chcesz. Jaką masz aplikację? Strona na komputery stacjonarne lub serwerowe? – gaussblurinc

Odpowiedz

2

Czy obejrzałeś Net::StackExchange2?

#for methods that require auth. 
my $se = Net::StackExchange2->new(
    { 
     site=>"stackoverflow", 
     access_token => '<THE ACCESS TOKEN>' , 
     key => '<YOUR APP KEY>' 
    } 
); 

Używa LWP :: UserAgent. Nawet jeśli nie chcesz bezpośrednio korzystać z modułu Net :: StackExchange2, masz dużą szansę na znalezienie kodu przykładowego do wypożyczenia.

+0

Myślę, że mógłbym chcieć tego użyć. Dziękuję, nie wiem, jak to umknęło mojej uwadze. –

Powiązane problemy