authorize.js 1.5KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. import Taro from "@tarojs/taro";
  2. export default function getAuthorize(scope) {
  3. return new Promise((resolve, reject) => {
  4. Taro.getSetting({
  5. success(res) {
  6. if (!res.authSetting[scope]) {
  7. Taro.authorize({
  8. scope,
  9. success: resolve,
  10. fail: (err) => {
  11. console.error(err);
  12. reject(err);
  13. },
  14. });
  15. } else {
  16. resolve();
  17. }
  18. },
  19. fail(err) {
  20. console.error(err);
  21. reject(err);
  22. },
  23. });
  24. });
  25. }
  26. export const getLocation = async (options) => {
  27. // try {
  28. return await new Promise((resolve, reject) => {
  29. wx.getLocation({
  30. ...(options || {}),
  31. success(res) {
  32. resolve(res);
  33. },
  34. fail(err) {
  35. console.error(err);
  36. reject(err);
  37. },
  38. });
  39. });
  40. // } catch (err_1) {
  41. // console.error(err_1);
  42. // reject(err_1);
  43. // }
  44. };
  45. const key = "6WQBZ-5VIC4-BZTUI-DIG64-R4XO3-PWBH3";
  46. export const h5GetLocation = () => {
  47. return new Promise((resolve, reject) => {
  48. const url = `/api2/ws/location/v1/ip?key=${key}`;
  49. const res = Taro.request({
  50. url: url,
  51. method: "GET",
  52. dataType: "json",
  53. header: {
  54. "content-type": "application/json",
  55. },
  56. });
  57. resolve(res);
  58. reject(res);
  59. // .then((res) => {
  60. // resolve(res.result);
  61. // })
  62. // .catch((error) => {
  63. // reject(error);
  64. // console.error("请求失败", error);
  65. // });
  66. });
  67. };