AccessToken.php 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. <?php
  2. namespace app\extra\ocean;
  3. class AccessToken extends Base
  4. {
  5. /**
  6. * 获取AccessToken
  7. * https://open.oceanengine.com/labels/37/docs/1696710505596940?origin=left_nav
  8. * @param string $type
  9. * @param string $authCode
  10. * @param string $grantType
  11. * @return array
  12. */
  13. public function getAccessTokenCode(string $authCode,string $type = "ad",string $grantType = 'auth_code'): array
  14. {
  15. $data = [
  16. "app_id" => $this->config['appid'],
  17. "secret" => $this->config['secret'],
  18. "grant_type" => $grantType,
  19. "auth_code" => $authCode
  20. ];
  21. $url = "oauth2/access_token/";
  22. return $this->curlPostApi($url,$data);
  23. }
  24. /**
  25. * 刷新AccessToken
  26. * https://open.oceanengine.com/labels/37/docs/1696710506097679?origin=left_nav
  27. * @param string $token
  28. * @param string $grantType
  29. * @return array
  30. */
  31. public function refreshAccessToken(string $token,string $type = "ad",string $grantType = 'refresh_token'): array
  32. {
  33. $data = [
  34. "app_id" => $this->config['appid'],
  35. "secret" => $this->config['secret'],
  36. "grant_type" => $grantType,
  37. "refresh_token" => $token
  38. ];
  39. $url = "oauth2/refresh_token/";
  40. return $this->curlPostApi($url,$data);
  41. }
  42. /**
  43. * 获取已授权账户
  44. * https://open.oceanengine.com/labels/37/docs/1696710506574848?origin=left_nav
  45. * @return array
  46. */
  47. public function getOauthAccount(): array
  48. {
  49. $data = [
  50. "access_token" => $this->getAccessToken()
  51. ];
  52. $url = "oauth2/advertiser/get/";
  53. return $this->curlGetApi($url,$data);
  54. }
  55. /**
  56. * 获取授权User信息
  57. * https://open.oceanengine.com/labels/7/docs/1696710507039756?origin=left_nav
  58. * @param string $access_token
  59. * @return array
  60. */
  61. public function getOauthAccountInfo(string $access_token = ""): array
  62. {
  63. $url = "2/user/info/";
  64. return $this->curlGetApi($url);
  65. }
  66. }