id:Kodakana
クリップボードにあるものをただ貼り付けるのことを語る

<?php
function getRequest($init_url, $callback_url, $scope, $conkey, $conkey_sec){
try{
require_once 'HTTP/OAuth/Consumer.php';
$oauth_con = new HTTP_OAuth_Consumer($conkey, $conkey_sec);
$req = new HTTP_Request2();
$req->setConfig('ssl_verify_peer', false);
$con_req = new HTTP_OAuth_Consumer_Request;
$con_req->accept($req);
$oauth_con->accept($con_req);
$oauth_con->getRequestToken($init_url, $callback_url, array('scope' => $scope));
$ret = array();
$ret['token'] = $oauth_con->getToken();
$ret['secret'] = $oauth_con->getTokenSecret();
} catch(Exception $e){
$ret['error'] = $e->getMessage();
}
return $ret;
}
function getAccess($token_url, $reqtoken, $req_sec, $verifier, $conkey, $conkey_sec){
try{
require_once 'HTTP/OAuth/Consumer.php';
$oauth_con = new HTTP_OAuth_Consumer($conkey, $conkey_sec, $reqtoken, $req_sec);
$req = new HTTP_Request2();
$req->setConfig('ssl_verify_peer', false);
$con_req = new HTTP_OAuth_Consumer_Request;
$con_req->accept($req);
$oauth_con->accept($con_req);
$oauth_con->getAccessToken($token_url, $verifier);
$lastreq = $req->getLastEvent();
$res = $lastreq['data'];
$ret['ob'] = $oauth_con;
$ret['token'] = $oauth_con->getToken();
$ret['secret'] = $oauth_con->getTokenSecret();
$ret['body'] = $res->getBody();
} catch(Exception $e){
$ret['trace'] = $e->getTrace();
$ret['error'] = $e->getMessage();
}
return $ret;
}
function getJson($get_url, $use_oauth, $conkey = '', $conkey_sec = '', $acskey = '', $acskey_sec = ''){
if ($use_oauth === TRUE){
try {
require_once 'HTTP/OAuth/Consumer.php';
$oauth_con = new HTTP_OAuth_Consumer($conkey, $conkey_sec);
$req = new HTTP_Request2();
$req->setConfig('ssl_verify_peer', false);
$con_req = new HTTP_OAuth_Consumer_Request;
$con_req->accept($req);
$oauth_con->accept($con_req);
$oauth_con->setToken($acskey);
$oauth_con->setTokenSecret($acskey_sec);
$res = $oauth_con->sendRequest($get_url);
$ret['body'] = $res->getBody();
$ret['stat'] = TRUE;
} catch (Exception $e){
$ret['stat'] = $e->getMessage();
}
return $ret;
} else {
try {
require_once "HTTP/Request2.php";
$req = new HTTP_Request2($get_url);
$res = $req->send();
$ret['http'] = $res->getStatus();
$ret['body'] = $res->getBody();
$ret['stat'] = TRUE;
} catch (Exception $e){
$ret['stat'] = $e->getMessage();
}
return $ret;
}
}
function postGeneric($api, $postdata = array('foo' => 'bar'), $conkey, $conkey_sec, $acskey, $acskey_sec, $body = ''){
try {
require_once 'HTTP/OAuth/Consumer.php';
$oauth_con = new HTTP_OAuth_Consumer($conkey, $conkey_sec);
$req = new HTTP_Request2();
$req->setConfig('ssl_verify_peer', false);
if ($body != '') $req->setBody($body);
$con_req = new HTTP_OAuth_Consumer_Request;
$con_req->accept($req);
$oauth_con->accept($con_req);
$oauth_con->setToken($acskey);
$oauth_con->setTokenSecret($acskey_sec);
$res = $oauth_con->sendRequest($api, $postdata, "POST");
$ret['http'] = $res->getStatus();
var_dump($http);
$ret['body'] = $res->getBody();
$ret['session'] = $_SESSION;
$ret['stat'] = TRUE;
} catch (Exception $e){
$ret['error'] = $e->getMessage();
$ret['session'] = $_SESSION;
$ret['stat'] = FALSE;
}
return $ret;
}
?>