2013-04-01 21 views
5

Tôi đang sử dụng WWW :: Cơ giới hóa. Đối với các phương pháp mà không yêu cầu xác thực, tôi nhận được những người như tôi sẽ bất kỳ url khác, và sau đó sử dụng perl mô-đun JSON để phân tích ra bất kỳ dữ liệu tôi muốn:Làm cách nào để truy cập các phương thức được xác thực API StackExchange từ tập lệnh perl?

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

Tôi đã sử dụng mechanize để đăng nhập vào trang web trong quá khứ, nhưng các công cụ Oauth là khó hiểu, và những gì documentation is provided for using the API cho thấy rằng nó là dành cho các ứng dụng web (yêu cầu đăng ký với StackExchange?).

Cụ thể, tôi quan tâm đến số notifications method mặc dù tôi mong đợi mã chính xác để cho phép truy cập vào bất kỳ phương thức được yêu cầu xác thực nào.

+0

ok, bạn có đăng ký ứng dụng của mình không? bạn phải làm điều đó để sử dụng các phương thức auth – gaussblurinc

+0

Tôi có bây giờ. Tiếp theo là gì? Một câu trả lời với "điều này sẽ chỉ làm việc sau khi đăng ký" và sau đó hướng dẫn sẽ được chào đón, tôi đã upvoted đó. –

+0

oh, tôi không chắc chắn, những gì bạn muốn. Bạn có loại ứng dụng nào? Máy tính để bàn hoặc phía máy chủ? – gaussblurinc

Trả lời

2

Bạn đã xem Net::StackExchange2 chưa?

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

Nó sử dụng LWP :: UserAgent. Ngay cả khi bạn không muốn sử dụng mô-đun Net :: StackExchange2 trực tiếp, bạn có cơ hội tìm thấy một số mã ví dụ tốt để mượn.

+0

Tôi nghĩ rằng tôi có thể muốn sử dụng điều này. Cảm ơn bạn, tôi không biết làm thế nào nó thoát khỏi thông báo của tôi. –

Các vấn đề liên quan