2

我打算将 simpleID(openId 服务器)与 ownCloud(开源私有云)集成。在这里,我只想同时登录 ownCloud 和 simpleID 一次。我的意思是,当我使用我的用户名和密码登录 ownCloud 时,我也应该登录到 simpleID,而不需要从 simpleID 服务器询问进一步的登录表单。

为此,在我登录 ownCloud 后,我使用了 PHP curl 代码并发送了参数,例如'name=myname''pass=123''q=login'(这些是我认为应该发送到 simpleID 服务器的参数)。这是我的卷曲代码。

<?php

$h = curl_init();

curl_setopt($h, CURLOPT_URL, "http://localhost/simpleid/www/index.php");
curl_setopt($h, CURLOPT_POST, true);
curl_setopt($h, CURLOPT_POSTFIELDS, array(
'q' => 'login',
'name' => 'myname',
'pass' => '123'
));
curl_setopt($h, CURLOPT_HEADER, false);
curl_setopt($h, CURLOPT_RETURNTRANSFER, 1);

$result = curl_exec($h);
echo 'dd : '.$result;

?>

但我无法在 simpleID 服务器中成功启动会话。请告诉我应该发送到服务器的所有参数是什么,或者我应该如何在 simpleID 中启动会话而不提交表单。

我喜欢提供100赏金以获得有用的答案。

提前致谢..!

4

1 回答 1

0

如果 simpleID 服务器在同一个域名上运行,那么您需要在 curl 调用中提供 sessionid。但如果目标是拥有一个 openID 服务器,那么有一个 owncloud 应用程序可以做到这一点。查看 user_openid_provider 应用

于 2014-07-20T18:07:53.750 回答