sign_request($sha1_method, $consumer, NULL); $curl = curl_init($rtoken); curl_setopt($curl, CURLOPT_RETURNTRANSFER,TRUE); $rtoken = curl_exec($curl); curl_close($curl); preg_match('/oauth_token=([^&]*)&oauth_token_secret=([^&]*)/', $rtoken, $rtoken); $rtoken_secret = $rtoken[2]; $rtoken = $rtoken[1]; if(!$rtoken) die('This is a known bug, just go back and try again'); $_SESSION['rtoken'] = $rtoken; $_SESSION['rtoken_secret'] = $rtoken_secret; $callback_url = "$base_url/wp_app.php?action=access"; $auth_url = 'http://wptest.singpolyma.net/wp-content/plugins/wp-oauth/authorize_token.php' . "?oauth_token=$rtoken&oauth_callback=".urlencode($callback_url); header('Location: '.$auth_url,true,303); exit; }//end if start if($_REQUEST['action'] == 'access') { $rtoken = new OAuthConsumer($_SESSION['rtoken'], $_SESSION['rtoken_secret']); $atoken = OAuthRequest::from_consumer_and_token($consumer, $rtoken, 'GET', 'http://wptest.singpolyma.net/wp-content/plugins/wp-oauth/access_token.php', array()); $atoken->sign_request($sha1_method, $consumer, $rtoken); $curl = curl_init($atoken); curl_setopt($curl, CURLOPT_RETURNTRANSFER,TRUE); $atoken = curl_exec($curl); curl_close($curl); preg_match('/oauth_token=([^&]*)&oauth_token_secret=([^&]*)/', $atoken, $atoken); $atoken = new OAuthConsumer($atoken[1], $atoken[2]); $service = OAuthRequest::from_consumer_and_token($consumer, $atoken, 'POST', 'http://wptest.singpolyma.net/wp-app.php/posts', array()); $service->sign_request($sha1_method, $consumer, $atoken); $p = << HAI IZ POSTING ATOM; header('Content-Type: text/plain'); $curl = curl_init($service); echo $service."\n\n"; curl_setopt($curl, CURLOPT_POST,TRUE); curl_setopt($curl, CURLOPT_HTTPHEADER, array("Content-Type: application/atom+xml;type=entry")); curl_setopt($curl, CURLOPT_POSTFIELDS, $p); curl_setopt($curl, CURLOPT_USERAGENT, 'OAuth Example'); curl_setopt($curl, CURLOPT_HEADER, TRUE); curl_setopt($curl, CURLOPT_RETURNTRANSFER,TRUE); $service = curl_exec($curl); curl_close($curl); var_dump($service); exit; }//end if access ?>

OAuth Test Client (WP+APP)