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

Re^3: Where is LWP::Simple::get error information stored?

by BrowserUk (Pope)
on Sep 28, 2012 at 18:31 UTC ( #996267=note: print w/replies, xml ) Need Help??


in reply to Re^2: Where is LWP::Simple::get error information stored?
in thread Where is LWP::Simple::get error information stored?

For the sake of maintainability though I think I will avoid using this crafty method.

It is not at all clear to me why you think it need be a maintenance problem. Just wrap it over in a function something like:

sub getWithStatus { my $url = shift; my $content; open my $RAM, '>', \$content; my $stdoutsaved = select; select *$RAM; my $status = getprint( $url ); select $stdoutsaved; close $RAM; return $status, $content; } ... my( $status, $content ) = getWithStatus( $url ); if( $status ne RC_OK ) { die "Get $url failed with HTTP status: $status"; } ...

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

Social/div

Replies are listed 'Best First'.
Re^4: Where is LWP::Simple::get error information stored?
by ajam (Acolyte) on Sep 28, 2012 at 20:16 UTC

    Good point.

    For some reason I envisioned just pasting that inline. Obviously it is appropiate to put in a function.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://996267]
help
Chatterbox?
[Corion]: ambrus: Yes, ideally an API that I feed the incoming data piece by piece and that I can ask "is that response done" and "what should I do next" and "please construct the appropriate redirect for me"
[Corion]: ambrus: Yes, ideally the module would do all that nasty stuff for me and give me a way to ask it what the current situation is
[ambrus]: Corion: you could also consider using some wrapper over the multi interface of curl, I think Net::Curl might be a good one, since implementing enough of what it expects from the event loop might be easier than a full AnyEvent interface.
[ambrus]: Corion: you could also consider using IO::Async and its POE driver and some HTTP module for it, but I don't know if that would solve your problems with AnyEvent+POE
[ambrus]: Corion: wait, you didn't say POE. You said Prima, let me look up what that is.
[ambrus]: Corion: have you considered just writing an AnyEvent integration for that thing?
[ambrus]: Or perhaps pushing schmorp to write one?
[ambrus]: Also, searching for an existing one on CPAN obviously
[Corion]: Prima, which is mostly cooperative multitasking
[ambrus]: Corion: also (sorry for the obvious ideas) consider running your HTTP thing in a separate process from Prima (separate thread won't work well if you need a perl interpreter on both sides)

How do I use this? | Other CB clients
Other Users?
Others taking refuge in the Monastery: (11)
As of 2016-12-07 16:07 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    On a regular basis, I'm most likely to spy upon:













    Results (130 votes). Check out past polls.