WebStart.php 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. <?php
  2. ini_set("display_errors", 1);
  3. error_reporting(E_ALL);
  4. define("CURR_PATH", dirname(dirname(__FILE__)));
  5. require_once CURR_PATH . '/includes/Defines.php';
  6. require_once CURR_PATH . '/includes/AutoLoader.php';
  7. ini_set ( 'date.timezone', 'Asia/Shanghai' );
  8. /**
  9. * 获取全局AccessToken
  10. *
  11. * @return string
  12. */
  13. function getAccessToken() {
  14. /**
  15. * 这里演示只有一条固定全局AccessToken,在实际使用中,可能会根据不同的授权用户,
  16. * 获取各自的AccessToken,此时需要自行扩展实现多用户的全局共享AccessToken
  17. */
  18. return RedisCacheApi::getAccessToken ();
  19. }
  20. /**
  21. * 更新全局授权数据
  22. *
  23. * @param unknown $data
  24. * @return resource boolean
  25. */
  26. function updateAuthorizationData($data) {
  27. return RedisCacheApi::updateAuthToken ( $data );
  28. }
  29. /**
  30. * 获取RefreshToken
  31. *
  32. * @return string
  33. */
  34. function getRefreshToken() {
  35. /**
  36. * 这里演示只有一条固定全局RefreshToken,在实际使用中,可能会根据不同的授权用户,
  37. * 获取各自的AccessToken,此时需用户自行实现扩展。
  38. */
  39. return RedisCacheApi::getRefreshToken ();
  40. }
  41. /**
  42. * 获取当前请求URL
  43. */
  44. function getCurrentURL() {
  45. if ($_SERVER ['SERVER_PORT'] == '80') {
  46. return 'http://' . $_SERVER ['HTTP_HOST'] . $_SERVER ['REQUEST_URI'];
  47. } else {
  48. return 'http://' . $_SERVER ['HTTP_HOST'] . ":" . $_SERVER ['SERVER_PORT'] . $_SERVER ['REQUEST_URI'];
  49. }
  50. }
  51. /**
  52. * 获取当前host URL
  53. */
  54. function getCurrentHost() {
  55. $index = strpos ( $_SERVER ['REQUEST_URI'], "/", 1 );
  56. $server_path = substr ( $_SERVER ['REQUEST_URI'], 0, $index );
  57. if ($_SERVER ['SERVER_PORT'] == '80') {
  58. return 'http://' . $_SERVER ['HTTP_HOST'] . $server_path;
  59. } else {
  60. return 'http://' . $_SERVER ['HTTP_HOST'] . ":" . $_SERVER ['SERVER_PORT'] . $server_path;
  61. }
  62. }
  63. /**
  64. * 获取授权回调URL
  65. * #注意:获取到的域名是当前访问的URL地址,需要确保和开放平台设置的域名相同。
  66. *
  67. * @return string
  68. */
  69. function getOAuthRedirectURL() {
  70. // $host = getCurrentHost ();
  71. // TODO 授权回调HOST->需要和微店设置的保持一致
  72. $host = "http://www.abc.com/weidian_sdk_php";
  73. return $host . "/authorize_callback.php";
  74. }