Php SilverStripe:如何向其他网站发出HTTP请求?
我试图在控制器方法中向另一个网站发出HTTP请求。我寻找解决方案,但找不到任何有效的例子 这是我的密码:Php SilverStripe:如何向其他网站发出HTTP请求?,php,httprequest,silverstripe,Php,Httprequest,Silverstripe,我试图在控制器方法中向另一个网站发出HTTP请求。我寻找解决方案,但找不到任何有效的例子 这是我的密码: $r = new HttpRequest('http://community.bba.org/home', HttpRequest::METH_GET); $r->addQueryData(array('SessionID' => $arrGetParams['SessionID'])); try { $r->send(); } catch (HttpExcepti
$r = new HttpRequest('http://community.bba.org/home', HttpRequest::METH_GET);
$r->addQueryData(array('SessionID' => $arrGetParams['SessionID']));
try {
$r->send();
} catch (HttpException $ex) {}
我得到以下错误:
致命错误:在第215行的C:\wamp\www\abb\mysite\code\form\ALoginForm.php中找不到类“HttpRequest”
如何使此HTTP请求正常工作
我正在Windows 7机器上的WAMP上使用SilverStripe。
此»PECL扩展未与PHP捆绑
此问题与SilverStripe本身无关。您需要安装该模块,或者使用curl(wampserver与之捆绑在一起)。
有,但我不推荐。向外部站点或资源发出请求的内置方式是使用
RestfulService
文件如下:
典型用法:
$service = new RestfulService('http://community.bba.org/home', 1200); //domain, cache duration
$service->setQueryString(array(
'SessionID' => $arrGetParams['SessionID'],
));
$response = $service->request();
$body = $response->getBody();
如果你想使用PHP的
HTTPRequest
你必须安装http扩展()一个空的catch块肯定不会得到任何帮助。“那没用”-发生了什么?错误消息、日志文件、行为描述可能有助于诊断问题添加了错误消息,我认为有另一种方法可以在“SilverStripe”中发出http请求谢谢,现在我可以看到响应,我有一个场景需要在另一个网站上传递查询字符串值,这将在该网站上创建会话,如果我在我的网页上隐藏了Iframe,我就可以这样做。有没有办法在php代码中通过发出http请求来实现这一点,我用你的代码尝试过,但当我在同一个浏览器中访问该网站时,它不会创建会话?我想,你需要为此提出一个新问题。但您将无法以这种方式在用户浏览器中启动愤怒会话。