Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/283.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php SilverStripe:如何向其他网站发出HTTP请求?_Php_Httprequest_Silverstripe - Fatal编程技术网

Php SilverStripe:如何向其他网站发出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

我试图在控制器方法中向另一个网站发出HTTP请求。我寻找解决方案,但找不到任何有效的例子

这是我的密码:

$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请求来实现这一点,我用你的代码尝试过,但当我在同一个浏览器中访问该网站时,它不会创建会话?我想,你需要为此提出一个新问题。但您将无法以这种方式在用户浏览器中启动愤怒会话。