$applicationId = 'trkddemoappwm'; $createTokenRequest = array('ApplicationID' => $applicationId, 'Username' => '*****@*****.**', 'Password' => 't7c9k32db'); //make sure credentials are initialized here $wsAddressingHeaders = array(new SoapHeader('http://www.w3.org/2005/08/addressing', 'To', 'https://api.rkd.reuters.com/api/2006/05/01/TokenManagement_1.svc/Anonymous'), new SoapHeader('http://www.w3.org/2005/08/addressing', 'Action', 'http://www.reuters.com/ns/2006/05/01/webservices/rkd/TokenManagement_1/CreateServiceToken_1')); try { $createTokenResponse = $client->__soapCall('CreateServiceToken_1', array('parameters' => $createTokenRequest), null, $wsAddressingHeaders); echo 'Token received<br/>Token: ' . bin2hex($createTokenResponse->Token) . '<br/>Expiration: ' . $createTokenResponse->Expiration . '<br/>'; } catch (SoapFault $e) { echo "<span style='color:red'>Error occured: " . $e->getMessage() . "</span>"; } $client2 = new SoapClient("http://api.trkd.thomsonreuters.com/schemas/wsdl/News/News_1_HttpAndRKDToken.wsdl", array('soap_version' => SOAP_1_2, 'trace' => true)); //in order to get the XML response enable trace $auth = array('ApplicationID' => $applicationId, 'Token' => $createTokenResponse->Token); //make sure the app ID is initialized here $authvar = new SoapVar($auth, SOAP_ENC_OBJECT, "AuthorizationType", 'http://www.reuters.com/ns/2006/05/01/webservices/rkd/Common_1'); $newsRequest = RequestBuilder::createRequest(); $wsAddressingHeaders2 = array(new SoapHeader('http://www.w3.org/2005/08/addressing', 'To', 'http://api.rkd.reuters.com/api/2006/05/01/News_1.svc'), new SoapHeader('http://www.w3.org/2005/08/addressing', 'Action', 'http://www.reuters.com/ns/2006/05/01/webservices/rkd/News_1/RetrieveStoryML_1'), new SoapHeader('http://www.reuters.com/ns/2006/05/01/webservices/rkd/Common_1', 'Authorization', $authvar)); try { #$tmp['_'] = 'RetrieveStoryML_1'; $RetrieveStoryML_1['characters'] = "zh-Hans"; $endcoded = new SoapVar($RetrieveStoryML_1, SOAP_ENC_OBJECT); $newsResponse = $client2->__soapCall($endcoded, array('parameters' => $newsRequest), null, $wsAddressingHeaders2); #$view = new RetrieveStoryML1Response($newsResponse); echo '<hr/><a href="#formatted">Go to formatted ouput.</a>'; echo '<hr/><h2>XML Response:</h2><br/>' . htmlspecialchars($client2->__getLastResponse()); //get XML response #header("Content-Type: text/html; charset=utf-8"); #echo '<hr/><h2><a name="formatted">Formatted output:</a></h2><br/>' . $view->getHTML(); //creaing HTML from the response object } catch (SoapFault $e) { echo "<span style='color:red'>Error occured: " . $e->getMessage() . "</span>"; }
} #$client = new SoapClient("http://api.rkd.reuters.com/schemas/wsdl/TokenManagement/TokenManagement_1_HttpsAndAnonymous.wsdl", array('soap_version' => SOAP_1_2)); $client = new SoapClient("http://api.trkd.thomsonreuters.com/schemas/wsdl/TokenManagement/TokenManagement_1_HttpsAndAnonymous.wsdl", array('soap_version' => SOAP_1_2)); $applicationId = 'trkddemoappwm'; $createTokenRequest = array('ApplicationID' => $applicationId, 'Username' => '*****@*****.**', 'Password' => 't7c9k32db'); //make sure credentials are initialized here $wsAddressingHeaders = array(new SoapHeader('http://www.w3.org/2005/08/addressing', 'To', 'https://api.rkd.reuters.com/api/2006/05/01/TokenManagement_1.svc/Anonymous'), new SoapHeader('http://www.w3.org/2005/08/addressing', 'Action', 'http://www.reuters.com/ns/2006/05/01/webservices/rkd/TokenManagement_1/CreateServiceToken_1')); try { $createTokenResponse = $client->__soapCall('CreateServiceToken_1', array('parameters' => $createTokenRequest), null, $wsAddressingHeaders); echo 'Token received<br/>Token: ' . bin2hex($createTokenResponse->Token) . '<br/>Expiration: ' . $createTokenResponse->Expiration . '<br/>'; } catch (SoapFault $e) { echo "<span style='color:red'>Error occured: " . $e->getMessage() . "</span>"; } $client2 = new SoapClient("http://api.trkd.thomsonreuters.com/schemas/wsdl/Quotes/Quotes_1_HttpAndRKDToken.wsdl", array('soap_version' => SOAP_1_2, 'trace' => true)); //in order to get the XML response enable trace $auth = array('ApplicationID' => $applicationId, 'Token' => $createTokenResponse->Token); //make sure the app ID is initialized here $authvar = new SoapVar($auth, SOAP_ENC_OBJECT, "AuthorizationType", 'http://www.reuters.com/ns/2006/05/01/webservices/rkd/Common_1'); $quotesRequest = RequestBuilder::createRequest(); $wsAddressingHeaders2 = array(new SoapHeader('http://www.w3.org/2005/08/addressing', 'To', 'http://api.rkd.reuters.com/api/2006/05/01/Quotes_1.svc'), new SoapHeader('http://www.w3.org/2005/08/addressing', 'Action', 'http://www.reuters.com/ns/2006/05/01/webservices/rkd/Quotes_1/RetrieveItem_3'), new SoapHeader('http://www.reuters.com/ns/2006/05/01/webservices/rkd/Common_1', 'Authorization', $authvar)); try { $quotesResponse = $client2->__soapCall('RetrieveItem_3', array('parameters' => $quotesRequest), null, $wsAddressingHeaders2); $view = new RetrieveItem3Response($quotesResponse); #echo '<hr/><a href="#formatted">Go to formatted ouput.</a>'; #保存三个值:经济指标,预期值(CF_LAST),前值(CF_CLOSE),公布值(CF_YIELD) #echo '<hr/><h2>XML Response:</h2><br/>' . htmlspecialchars($client2->__getLastResponse()); //get XML response #echo '<hr/><h2><a name="formatted">Formatted output:</a></h2><br/>' . $view->getHTML(); //creaing HTML from the response object print_r($view); } catch (SoapFault $e) { echo "<span style='color:red'>Error occured: " . $e->getMessage() . "</span>"; }