0

URL から Oauth トークンを取得するために PHP curl を使用しています。

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
      'Authorization: ' . oauth_headers($consumer_key, $consumer_secret, $token, $token_secret, $verifier)));curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

https://www.yammer.com/oauth/request_token

すると、以下のような返事が返ってきました。

出力

-------
HTTP/1.1 200 OK
Server: nginx
Date: Wed, 10 Oct 2012 10:32:47 GMT
.........
.........

oauth_token=6y33AOcKOJVRVRggumfa9Q&oauth_token_secret=usjLakBRQh3Cq4rTWT1aJe9NVo7XKiATYIWvvVovI&oauth_callback_confirmed=true

oauth_token_secret結果から抽出するにはどうすればよいoauth_tokenですか?

4

2 に答える 2

1

を使用する必要がありますparse_str()

に変更CURLOPT_HEADERfalseてから:

$result = curl_exec($ch);
$string = parse_str($result);
echo $oauth_token_secret;
echo '<br />--------<br />';
echo $oauth_token;
于 2012-10-10T10:50:35.743 に答える
0

それがあなたが得ている答えであるならば、あなたはおそらくoauth-...を持っていることを望むでしょう。それは二重改行( "\ n")の後になります

だからあなたはすることができます:

parse_str(substr($s, strpos($s, "\n\n"));
echo $oauth_token_secret;
echo $oauth_token;

これを試して、何が解析されるかを確認することもできます。

parse_str(substr($s, strpos($s, "\n\n"), $test);
var_dump($test);
于 2012-10-10T10:56:55.273 に答える