index.html 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Title</title>
  6. </head>
  7. <body>
  8. 不知道是不是这样,还是哪样
  9. <div class="btns">
  10. <button onclick="getUserinfo()">获取用户信息</button>
  11. </div>
  12. <script type="text/javascript">
  13. function authorization(token){
  14. fetch(`/webman/3rdparty/WebToolBox/auth.cgi?action=portal&SynoToken=${token}`, {
  15. method: 'POST'
  16. }).then(async resp=>{
  17. const data = await resp.json()
  18. console.log('resp',resp,data)
  19. }).catch(e=>{
  20. console.log('auth fail',e)
  21. })
  22. }
  23. function getToken(){
  24. return fetch(`/webapi/entry.cgi?api=SYNO.API.Auth&version=6&method=token`, {
  25. method: 'GET',
  26. }).then(async resp=>{
  27. const data = await resp.json()
  28. if (data.success){
  29. var token = data.data.synotoken
  30. localStorage.setItem('SynoToken',token)
  31. authorization(token)
  32. console.log('token',token)
  33. return token
  34. }
  35. console.log('resp',resp,data)
  36. }).catch(e=>{
  37. console.log('auth fail',e)
  38. })
  39. }
  40. getToken()
  41. function getUserinfo(){
  42. var token = localStorage.getItem('SynoToken')
  43. if (token){
  44. authorization(token)
  45. }else {
  46. getToken().then(t=>authorization(t))
  47. }
  48. }
  49. </script>
  50. </body>
  51. </html>