使用PHP访问web知识的SOAP服务


SOAP service for accessing web of knowledge using PHP

我一直在尝试学习如何使用PHP访问Web of knowledge的soap服务。我正在使用下面的代码,这是我从https://gist.github.com/domoritz/2012629下载的。

<?php
$auth_url = "http://search.isiknowledge.com/esti/wokmws/ws/WOKMWSAuthenticate?wsdl";
$auth_client = @new SoapClient($auth_url);
$auth_response = $auth_client->authenticate();
$search_url = "http://search.isiknowledge.com/esti/wokmws/ws/WokSearchLite?wsdl";
$search_client = @new SoapClient($search_url);
$search_client->__setCookie('SID',$auth_response->return);
$search_array = array(
'queryParameters' => array(
'databaseID' => 'WOS',
'userQuery' => 'AU=Douglas T*',
'editions' => array(
array('collection' => 'WOS', 'edition' => 'SSCI'),
array('collection' => 'WOS', 'edition' => 'SCI')
),
'queryLanguage' => 'en'
),
'retrieveParameters' => array(
'count' => '5',
'fields' => array(
array('name' => 'Date', 'sort' => 'D')
),
'firstRecord' => '1'
)
);
try{
$search_response = $search_client->search($search_array);
} catch (Exception $e) {
echo $e->getMessage();
}
print_r($search_response);
?>

代码似乎正在工作。然而,我收到的$search_response是"用户没有此服务级别的权限- WOKSearchLight"。我正试图从一个机构内部的服务器访问这段数据,该服务器可以访问知识网络,我实际上使用http://apps.webofknowledge.com/UA_GeneralSearch_input.do?product=UA&search_mode=GeneralSearch&SID=4Dd8nnfofoOm@7@5KH6&preferencesSaved=.

连接到知识网络。谁能告诉我发生了什么事?我是否需要额外的网站许可?我真的很感谢任何帮助!

是的,你需要先在http://ip-science.thomsonreuters.com/info/ws_form/?agree=0&x=31&y=12注册并输入你的IP地址,然后它应该工作,我想…