公共 API(OAuth),v兔开放平台v兔工具,access_token,请求头参数生成的规则

公共 API(OAuth),v兔开放平台需要帮助请前往v兔工具,更多干货请看: http://ask.vv-tool.com/
接口能达到什么样的效果:
获取v兔开放平台的接口的请求头,token是v兔系统唯一识别用户的指标,
请将已经开通的接口的Account和Accessskey作为入参数据获取生成 access_token。

如果怀疑自己账号的Account和Accessskey已经泄露出去,被其他人冒用,请及时登陆http://doc.vv-tool.com/taobao接口文档地址,选择更换Account和Accessskey

请求头参数接口文档地址http://doc.vv-tool.com/taobao/common

二、调用接口的条件
需要开通要调用接口的密钥,每个接口密钥是独立唯一的,如果需要开通什么接口的密钥请联系运营或则销售沟通。
三、接口的常见问题

1、一台服务器调用的时候会生成唯一的token,另外一台用同一个账号生成新的token会将前一个的token过期挤掉。

2、身份凭证无效说明你的token过期了

3、v兔这边的生成的token正常情况是3000天的有效期,千万别请求一次换一个token,这样一定会出现很多身份凭证无效的。(第二次请求生成token会导致第一次的生成的token过期的)

生成token的接口文档地址:http://doc.vv-tool.com/taobao/newcommon

例如:

1、如果突然调用量是好几倍增长,我们认为该token被盗,会减少有效期时间,

2、生成token用ip1但是访问接口用ip2来访问请求,系统自动判定该token被盗,做失效处理。





公共 API(OAuth)

接口地址: http://api.vv-tool.com/oauth/token

接口介绍: 获取用户 access_token,请求接口的身份识别 点击查看详情

请求方式: POST

传参方式: form-data

返回格式: JSON

请求参数

grant_typestringclient_credentials照抄就行
scopestring可以不传
client_idstring23b9530c14856xxx传入您自己的 Account
client_secretstringc209580b23b9530c1485699d5c4b2xxx传入您自己的 Accessskey

请求示例

grant_type: client_credentials
client_id:23b9530c14856xxx
client_secret:c209580b23b9530c1485699d5c4b2xxx

响应参数

access_tokenstring您获取到的 access_token
expires_inint有效时间,单位秒
token_typestring令牌类型
scopestring权限

如何使用

请求头中加入 Authorization:Bearer 5d34d5197d131ae0dae4a63d219516b1xxxxxxxx // Bearer 空格再连接上上一步获取的 access_token

使用上一步获得的 access_token 获取用户信息案例

<?php

$request = new HttpRequest();
$request->setUrl('http://api.vv-tool.com/tool/members/info');
$request->setMethod(HTTP_METH_GET);

$request->setHeaders(array(
  'cache-control' => 'no-cache',
  'Connection' => 'keep-alive',
  'Accept-Encoding' => 'gzip, deflate',
  'Host' => 'api.vv-tool.com',
  'Cache-Control' => 'no-cache',
  'Accept' => '*/*',
  'Authorization' => 'Bearer 5d34d5197d131ae0dae4a63d219516b1xxxxxxxx'
));

try {
  $response = $request->send();

  echo $response->getBody();
} catch (HttpException $ex) {
  echo $ex;
}



请求代码示例

cURL请求代码示例
curl --location --request POST 'http://api.vv-tool.com/oauth/token' \
--form 'grant_type=client_credentials' \
--form 'client_id=23b9530c14856xxx' \
--form 'client_secret=c209580b23b9530c1485699d5c4b2xxx'

PHP请求代码示例
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "http://api.vv-tool.com/oauth/token",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => array('grant_type' => 'client_credentials','client_id' => '23b9530c14856xxx','client_secret' => 'c209580b23b9530c1485699d5c4b2xxx'),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;

JAVA请求代码示例
OkHttpClient client = new OkHttpClient().newBuilder()
  .build();
MediaType mediaType = MediaType.parse("text/plain");
RequestBody body = new MultipartBody.Builder().setType(MultipartBody.FORM)
  .addFormDataPart("grant_type", "client_credentials")
  .addFormDataPart("client_id", "23b9530c14856xxx")
  .addFormDataPart("client_secret", "c209580b23b9530c1485699d5c4b2xxx")
  .build();
Request request = new Request.Builder()
  .url("http://api.vv-tool.com/oauth/token")
  .method("POST", body)
  .build();
Response response = client.newCall(request).execute();

响应参数

access_tokenstring您获取到的 access_token
expires_inint有效时间,单位秒
token_typestring令牌类型
scopestring权限

如何使用

请求头中加入 Authorization:Bearer 5d34d5197d131ae0dae4a63d219516b1xxxxxxxx // Bearer 空格再连接上上一步获取的 access_token

使用上一步获得的 access_token 获取用户信息案例

<?php

$request = new HttpRequest();
$request->setUrl('http://api.vv-tool.com/tool/members/info');
$request->setMethod(HTTP_METH_GET);

$request->setHeaders(array(
  'cache-control' => 'no-cache',
  'Connection' => 'keep-alive',
  'Accept-Encoding' => 'gzip, deflate',
  'Host' => 'api.vv-tool.com',
  'Cache-Control' => 'no-cache',
  'Accept' => '*/*',
  'Authorization' => 'Bearer 5d34d5197d131ae0dae4a63d219516b1xxxxxxxx'
));

try {
  $response = $request->send();

  echo $response->getBody();
} catch (HttpException $ex) {
  echo $ex;
}


  • 发表于 10/16/2020 18:19:55
  • 阅读 ( 2170 )
  • 分类:API接口

你可能感兴趣的文章

相关问题

0 条评论

请先 登录 后评论
运营小兵
运营小兵

运营

75 篇文章

我来创作