OpenID 로그인을 C++ 서버에 구현하기로 결정했습니다. 사용 가능한 C++ OpenID 클라이언트 목록을 살펴본 결과 libopkele
중 하나만 발견되었습니다. 하지만 자사의 요구 사항은 XML 파서가있는 간단한 서버에 대해 상당히 많은 방법으로 보입니다. regexps 등을 위해 부스트를 사용합니다.CURL을 사용하여 C/C++로 PHP 코드를 변환하는 방법은 무엇입니까?
그래서 C++에서 간단한 openID 클라이언트를 만들고 싶습니다. 그래서 PHPclient를 포트하기로 결정했습니다 (PHPa 비트를 알고 있기 때문에). class.openid.php
이라는 클래스가 있는데 첫 번째 버전은 단지 200 줄의 PHP 코드입니다. 내 주요 문제는 전에 PHP 나 C++에서 컬을 사용한 적이 없다는 것이다. 그래서 같은 PHP 코드 C/C++로 번역에 도움을 구걸 :
function CURL_Request($url, $method="GET", $params = "") { // Remember, SSL MUST BE SUPPORTED
if (is_array($params)) $params = $this->array2url($params);
$curl = curl_init($url . ($method == "GET" && $params != "" ? "?" . $params : ""));
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($curl, CURLOPT_HEADER, false);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl, CURLOPT_HTTPGET, ($method == "GET"));
curl_setopt($curl, CURLOPT_POST, ($method == "POST"));
if ($method == "POST") curl_setopt($curl, CURLOPT_POSTFIELDS, $params);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($curl);
if (curl_errno($curl) == 0){
$response;
}else{
$this->ErrorStore('OPENID_CURL', curl_error($curl));
}
return $response;
}
그래서 .. 어떻게 C에 같은 기능을 번역 ++ PHP에서 (libcurl에 사용)?
Ofcourse of some php openID library의 전체 translaion을보고 싶습니다. 예를 들어 600 줄의 PHP 코드 (한 클래스) [lightopenid] (http://code.google.com/p/lightopenid/). 그러나 아무도 나를 위해 해내 지 않은 사람을 생각 나게해라. .. ok 나는 독립해서 시험해 볼 수있다. 내 작은 크로스 플랫폼 서버에서 오픈 아이디 인증을 위해서만 작은 libopkele을 사용하지 않기 때문에 나에게 맞는 것 같지 않습니다. – Rella