curl获取189api access token

作者:matrix 发布时间:2014年1月13日 分类:零零星星

之前获取令牌都是手动提交提交表单后复制的access token

<form action="https://oauth.api.189.cn/emp/oauth2/v2/access_token" method="post">
<p> 接口: action="https://oauth.api.189.cn/emp/oauth2/v2/access_token" method="post"   <br>
grant_type:
<input type="text" name="grant_type" value="client_credentials" size="40">授权模式,响应类型<br>
  App Id:<input type="text" name="app_id" value="41300000000002185" size="40">应用在天翼开放平台平台上的唯一标识,在应用注册时分配<br>
   App Secret:<input type="text" name="app_secret" value="3d2083dbf75ae30000000003d" size="40">天翼开放平台颁发给应用的密钥信息<br>
   state:<input type="text" name="state" value="www.hhtjim.com" size="40"><br>
   scope:<input type="text" name="scope" size="40"><br>
<br>
  <input type="submit" value="点击获取令牌">
  </p>
</form>

以前也试过用curl模拟提交,可是都失败。现在不用那么傻了,用下面php代码解决。

$ai='4500000000000000000000000001345';
$as='1ab91560000000000000d33b3e6bgh4';
$post=array('Host: '=>'oauth.api.189.cn');
$url="https://oauth.api.189.cn/emp/oauth2/v2/access_token?grant_type=client_credentials&app_id=$ai&app_secret=$as";
$ch=curl_init($url);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$get_url = curl_exec($ch);
curl_close($ch);
$obj=json_decode($get_url);
echo $obj->access_token;

现在看来,原来如此。

代码说明:

1、2行代表你天翼云app的app_id和app_secret

模式:client_credentials

附:
类似的php代码: Php获取Token.php