Re: [PHP] XMLRPC and file_get_contents
- From: andreas.schlicker@xxxxxxxxxxxxxx (Andreas Schlicker)
- Date: Thu, 16 Aug 2007 15:10:15 +0200
Stut wrote:
Andreas Schlicker wrote:Hi all,
I'm writing an XML-REC client in PHP, based on the following example:
<?php
$request = xmlrpc_encode_request("method", array(1, 2, 3));
$context = stream_context_create(array('http' => array(
'method' => "POST",
'header' => "Content-Type: text/xml",
'content' => $request
)));
$file = file_get_contents("http://www.example.com/xmlrpc", false, $context);
$response = xmlrpc_decode($file);
if (xmlrpc_is_fault($response)) {
trigger_error("xmlrpc: $response[faultString] ($response[faultCode])");
} else {
print_r($response);
}
?>
If the XMLRPC call takes longer than say 30 seconds, the file_get_contents method doesn't returns null, and the script finishes. However, the XMLRPC server is not finished with the computation and gets a broken pipe since the client has already closed the connection.
Is there some timeout? Am I doing something wrong?
There could be several timeouts at work here. First you can set a timeout in the context[1]. Second the PHP request time limit[2]. And finally your web server (assuming this is running through a web server) will have its own timeout - check the documentation for whatever server you're using for details.
[1] http://php.net/wrappers.http
[2] http://php.net/set_time_limit
Hi Stut,
I already used the set_time_limit to set a script running timeout. Looks like the problem was the timeout in the context.
Thanks very much for you help.
Andreas
.
- References:
- XMLRPC and file_get_contents
- From: Andreas Schlicker
- Re: [PHP] XMLRPC and file_get_contents
- From: Stut
- XMLRPC and file_get_contents
- Prev by Date: A question that has been bugging me..
- Next by Date: Is it possible to disable eval()?
- Previous by thread: Re: [PHP] XMLRPC and file_get_contents
- Next by thread: A question that has been bugging me..
- Index(es):
Relevant Pages
|