Beefy Boxes and Bandwidth Generously Provided by pair Networks
The stupid question is the question not asked
 
PerlMonks  

Re^2: Thread::Queue and WWW::Curl

by Anonymous Monk
on Sep 24, 2012 at 14:53 UTC ( #995404=note: print w/ replies, xml ) Need Help??


in reply to Re: Thread::Queue and WWW::Curl
in thread Thread::Queue and WWW::Curl

Thanks for the speedy replies. The 2 missing subroutines are as follows:

sub deleteUser { # in: app access token, app id, FB userId to delete # deletes user using app access token # out: nothing my ($accessToken, $appId, $userId) = (shift, shift, shift); my %form = ( method => 'delete', access_token => $accessToken ); my $url = 'https://graph.facebook.com/' . $userId; my $post = hitFbNew2('post', $url , \%form); return ($post); }
and
sub hitFbNew { my ($method, $endpoint, $form) = (shift, shift, shift); my $curl = WWW::Curl::Easy->new; my $curlf = WWW::Curl::Form->new; my $response_body; for my $key (keys %{$form}){ $curlf->formadd($key, $form->{$key}); } $curl->setopt(CURLOPT_WRITEDATA, \$response_body); $curl->setopt(CURLOPT_URL, $endpoint); $curl->setopt(CURLOPT_HTTPPOST, $curlf); print "\nHitting FB using the curl libraries..."; my $response = $curl->perform; print "\nresponse was $response"; my %reply = ( content => $response_body, responseCode => $curl->getinfo(CURLINFO_HTTP_CODE) ); print "\nreply code is $reply{responseCode} and content is $reply{co +ntent}"; return (\%reply); }
I will look at WWW::Curl::Multi in the meantime.


Comment on Re^2: Thread::Queue and WWW::Curl
Select or Download Code
Replies are listed 'Best First'.
Re^3: Thread::Queue and WWW::Curl
by BrowserUk (Pope) on Sep 24, 2012 at 15:04 UTC

    You still haven't said what fails? Or how you know something is failing?


    With the rise and rise of 'Social' network sites: 'Computers are making people easier to use everyday'
    Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
    "Science is about questioning the status quo. Questioning authority".
    In the absence of evidence, opinion is indistinguishable from prejudice.

    RIP Neil Armstrong

      When I run via threads, the following line does not output to my terminal:

      print "\nresponse was $response";
      , nor does the print statement after it output; furthermore I don't see the user deleted on the remote server when running via threads (however I do when running that code without threading).

        Looks like a clear-cut case of either WWW::Curl or libcurl not being thread-safe.


        With the rise and rise of 'Social' network sites: 'Computers are making people easier to use everyday'
        Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
        "Science is about questioning the status quo. Questioning authority".
        In the absence of evidence, opinion is indistinguishable from prejudice.

        RIP Neil Armstrong

        Apologies, I omitted two use statements in the above hitFbNew subroutine, amended as follows:

        sub hitFbNew { my ($method, $endpoint, $form) = (shift, shift, shift); use WWW::Curl::Easy; use WWW::Curl::Form; my $curl = WWW::Curl::Easy->new; my $curlf = WWW::Curl::Form->new; ...

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://995404]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others contemplating the Monastery: (12)
As of 2015-09-01 15:45 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    My preferred temperature scale is:










    Results (33 votes), past polls