Code Monkey home page Code Monkey logo

chaoxing-sign's Introduction

🌟某星签到(网页版)

size CI License

在这里你可以在摆脱客户端繁琐的签到流程,让签到不再是你的烦恼。

✨功能

  • 普通签到
  • 拍照签到
  • 位置签到
  • 手势签到
  • 签到码签到
  • 二维码签到
  • 监听签到任务,自动完成
  • 支持多用户批量签到

更多帮助

🛠 运行

git clone https://github.com/kuizuo/chaoxing-sign.git
cd chaoxing-sign
pnpm install

你需要一个 PostgreSQL 数据库地址(用于存储账号信息以及自动监控签到),然后将项目根目录下 .env.example 文件更改成 .env 并替换 DATABASE_URL 为数据库地址(通常是远程地址)。运行如下命令用于同步数据库:

npx prisma db push
pnpm run dev

打包

pnpm run build
pnpm run preview

部署

PM2 + Nginx (推荐)

本项目已经编写好了 ecosystem.config.js 文件,具体请根据实际情况修改环境变量,你可以直接使用 PM2 来启动项目。

npm run start:pm2

此时已经启动好了本地端口为 8050 的服务,要注意,如果你使用了 Nginx 的反向代理,那么你需要将 AUTH_ORIGIN 环境变量设置为你的域名,否则将无法正常使用。并在 Nginx 中添加如下配置:

    location / {
      proxy_pass http://127.0.0.1:8050;
    }

此外可能还需要配置 SSL 证书,因为要调用摄像头权限就必须是在安全环境下(即https下),否则你将无法使用扫一扫功能,这也是无奈之举。

Docker

本项目已经编写好了 docker 相关文件,你可以直接使用 Docker 来启动项目。

⚠️ 注意: 需要将 node_modules 复制到镜像内, 因为 prisma client 产物存在 node_modules 内.

如果你有自己的 postgresql (远程)数据库,那么你需要在 Dockerfile 中修改 DATABASE_URL 环境变量为你的数据库地址,执行下方命令即可构建镜像。

docker buildx build . -t chaoxing-sign:latest

Vercel or Netlify(不推荐)

由于采用 Nuxt.js 框架,所以非常容易部署在 Vercel 或 Netlify 等平台上,但还是不推荐部署,理由如下:

Vercel 或 Netlify 的服务器设立在国外,用户需要通过一些特殊手段能够访问,并且由于某星的服务器设立在国内,数据请求需要多一道障碍来访问,将导致响应速度过慢,网站体验效果极其不佳,已亲测,因此不推荐使用(无奈之举)。

🤝 免责声明

本项目仅作为个人技术专研,仅供学习参考。不得用于商业用途。

📝 License

MIT License © 2023-PRESENT Kuizuo

chaoxing-sign's People

Contributors

kuizuo avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

chaoxing-sign's Issues

[bug]cookies过期

Cookies通常在3至15天过期,为防止过期造成签到失败,可否每2天刷新一次。

位置签到
自动
2024-02-** 
请先登录再进行签到

[需要帮助]docker构建镜像错误

请教个新手问题😂,我想构建成docker镜像,但是一直不成功
在本地使用pnpm run dev是可以正常运行的,构建docker一直卡在RUN pnpm build这里提示我MODULE_NOT_FOUND

RUN pnpm build
> [email protected] build /app
> nuxi build
node:internal/modules/cjs/loader:1143
throw err;
^
Error: Cannot find module '/app/node_modules/nuxt/bin/nuxt.mjs'
at Module._resolveFilename (node:internal/modules/cjs/loader:1140:15)
at Module._load (node:internal/modules/cjs/loader:981:27)
at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:128:12)
at node:internal/main/run_main_module:28:49 {
code: 'MODULE_NOT_FOUND',
requireStack: []
}
Node.js v18.20.3
 ELIFECYCLE  Command failed with exit code 1.
------
Dockerfile:11
--------------------
   9 |
  10 |     COPY . .
  11 | >>> RUN pnpm build
  12 |
  13 |     FROM $NODE_VERSION AS production-stage
--------------------
ERROR: failed to solve: process "/bin/sh -c pnpm build" did not complete successfully: exit code: 1

PostgreSQL 数据库地址 配置

PostgreSQL 数据库地址都这里就不明白了,.env文件具体需要改什么,能不能出个简单一点的教程,谢谢了。

[功能建议] 自动获取签到指定位置信息

如题,贡献一点自己的代码供参考,本人不会ts所以只能建议一下。

对于含位置的签到,超星会在presign页面内嵌入位置信息,可通过该途径获取。

但近期超星又更新了api,导致二维码位置签到无法通过此方式获取位置信息,需从另一个api获取位置信息。但普通的位置签到仍可从presign中获取。

详见Xdcheckin_py/chaoxing/chaoxing.py

Commits 39b5b04 编译失败

执行pnpm install && pnpm run build > log.txt 2>&1
这个是log.txt
Commits 39b5b04

Lockfile is up to date, resolution step is skipped
Already up to date


> [email protected] postinstall /home/sign/chaoxing-sign
> nuxi prepare && prisma generate

Nuxi 3.6.5
[nuxt-auth] ℹ nuxt-auth setup starting
[nuxt-auth] ✔ nuxt-auth setup done
✔ Types generated in .nuxt
Environment variables loaded from .env
Prisma schema loaded from prisma/schema.prisma

✔ Generated Prisma Client (v5.2.0) to ./node_modules/.pnpm/@[email protected][email protected]/node_modules/@prisma/client in 335ms
Start using Prisma Client in Node.js (See: https://pris.ly/d/client)

import { PrismaClient } from '@prisma/client'
const prisma = new PrismaClient()

or start using Prisma Client at the edge (See: https://pris.ly/d/accelerate)

import { PrismaClient } from '@prisma/client/edge'
const prisma = new PrismaClient()


See other ways of importing Prisma Client: http://pris.ly/d/importing-client

Done in 9.8s

> [email protected] build /home/sign/chaoxing-sign
> nuxi build

Nuxi 3.6.5
Nuxt 3.6.5 with Nitro 2.6.2
[nuxt-auth] ℹ nuxt-auth setup starting
[nuxt-auth] ✔ nuxt-auth setup done
ℹ Building client...
ℹ vite v4.3.9 building for production...
ℹ transforming...
ℹ ✓ 2861 modules transformed.
ℹ rendering chunks...
ℹ computing gzip size...
ℹ .nuxt/dist/client/manifest.json                                   34.87 kB │ gzip:   2.60 kB
ℹ .nuxt/dist/client/_nuxt/ProsePre.e63e49c6.css                      0.05 kB │ gzip:   0.07 kB
ℹ .nuxt/dist/client/_nuxt/default.9d8ec5ee.css                       0.11 kB │ gzip:   0.11 kB
ℹ .nuxt/dist/client/_nuxt/IconCSS.f0f77ecb.css                       0.26 kB │ gzip:   0.17 kB
ℹ .nuxt/dist/client/_nuxt/_uid_.d29bc140.css                         0.37 kB │ gzip:   0.24 kB
ℹ .nuxt/dist/client/_nuxt/index.4573273d.css                         1.83 kB │ gzip:   0.62 kB
ℹ .nuxt/dist/client/_nuxt/error-500.cbe832a1.css                     1.95 kB │ gzip:   0.74 kB
ℹ .nuxt/dist/client/_nuxt/error-404.7b8544b4.css                     3.63 kB │ gzip:   1.12 kB
ℹ .nuxt/dist/client/_nuxt/entry.a516707f.css                        29.87 kB │ gzip:   7.23 kB
ℹ .nuxt/dist/client/_nuxt/ProseCode.09d51da8.js                      0.10 kB │ gzip:   0.11 kB
ℹ .nuxt/dist/client/_nuxt/_commonjsHelpers.28e086c5.js               0.13 kB │ gzip:   0.10 kB
ℹ .nuxt/dist/client/_nuxt/ProseHr.ef2364ff.js                        0.15 kB │ gzip:   0.14 kB
ℹ .nuxt/dist/client/_nuxt/DocumentDrivenNotFound.91b4efce.js         0.16 kB │ gzip:   0.15 kB
ℹ .nuxt/dist/client/_nuxt/ContentRendererMarkdown.44bc937f.js        0.17 kB │ gzip:   0.15 kB
ℹ .nuxt/dist/client/_nuxt/LoginCard.a96c4b10.js                      0.18 kB │ gzip:   0.15 kB
ℹ .nuxt/dist/client/_nuxt/ProseTr.d5028fde.js                        0.18 kB │ gzip:   0.16 kB
ℹ .nuxt/dist/client/_nuxt/ProseP.7a92eaf3.js                         0.19 kB │ gzip:   0.17 kB
ℹ .nuxt/dist/client/_nuxt/ProseEm.b86277d4.js                        0.19 kB │ gzip:   0.17 kB
ℹ .nuxt/dist/client/_nuxt/ProseLi.08fdbd64.js                        0.19 kB │ gzip:   0.17 kB
ℹ .nuxt/dist/client/_nuxt/ProseOl.a1777c28.js                        0.19 kB │ gzip:   0.17 kB
ℹ .nuxt/dist/client/_nuxt/ProseTd.baa00f0a.js                        0.19 kB │ gzip:   0.17 kB
ℹ .nuxt/dist/client/_nuxt/ProseTh.591911e4.js                        0.19 kB │ gzip:   0.17 kB
ℹ .nuxt/dist/client/_nuxt/ProseUl.b5665b2c.js                        0.19 kB │ gzip:   0.17 kB
ℹ .nuxt/dist/client/_nuxt/ProseCodeInline.8ea616a3.js                0.19 kB │ gzip:   0.17 kB
ℹ .nuxt/dist/client/_nuxt/ProseBlockquote.fd6c70b0.js                0.19 kB │ gzip:   0.17 kB
ℹ .nuxt/dist/client/_nuxt/ProseTable.4304715c.js                     0.19 kB │ gzip:   0.17 kB
ℹ .nuxt/dist/client/_nuxt/ProseTbody.0bc40fa1.js                     0.19 kB │ gzip:   0.17 kB
ℹ .nuxt/dist/client/_nuxt/ProseThead.0692fe10.js                     0.19 kB │ gzip:   0.17 kB
ℹ .nuxt/dist/client/_nuxt/ProseStrong.6db7dccf.js                    0.19 kB │ gzip:   0.17 kB
ℹ .nuxt/dist/client/_nuxt/UserButton.389c352e.js                     0.28 kB │ gzip:   0.19 kB
ℹ .nuxt/dist/client/_nuxt/DocumentDrivenEmpty.2c21b173.js            0.29 kB │ gzip:   0.24 kB
ℹ .nuxt/dist/client/_nuxt/ProseCode.vue.435ef3f2.js                  0.32 kB │ gzip:   0.22 kB
ℹ .nuxt/dist/client/_nuxt/Markdown.114392cb.js                       0.33 kB │ gzip:   0.26 kB
ℹ .nuxt/dist/client/_nuxt/login.95894798.js                          0.40 kB │ gzip:   0.29 kB
ℹ .nuxt/dist/client/_nuxt/ProseA.52041fd2.js                         0.40 kB │ gzip:   0.28 kB
ℹ .nuxt/dist/client/_nuxt/ProseH1.bf05e9ed.js                        0.44 kB │ gzip:   0.32 kB
ℹ .nuxt/dist/client/_nuxt/ProseH2.2029132d.js                        0.45 kB │ gzip:   0.32 kB
ℹ .nuxt/dist/client/_nuxt/ProseH3.8d534c7c.js                        0.45 kB │ gzip:   0.32 kB
ℹ .nuxt/dist/client/_nuxt/ProseH4.67f45b12.js                        0.45 kB │ gzip:   0.32 kB
ℹ .nuxt/dist/client/_nuxt/ProseH5.1e394354.js                        0.45 kB │ gzip:   0.32 kB
ℹ .nuxt/dist/client/_nuxt/ProseH6.9e3a3f29.js                        0.45 kB │ gzip:   0.32 kB
ℹ .nuxt/dist/client/_nuxt/help.555c3489.js                           0.46 kB │ gzip:   0.29 kB
ℹ .nuxt/dist/client/_nuxt/preview.6ec1d021.js                        0.54 kB │ gzip:   0.29 kB
ℹ .nuxt/dist/client/_nuxt/index.a6ef77ff.js                          0.62 kB │ gzip:   0.37 kB
ℹ .nuxt/dist/client/_nuxt/ProseImg.8529124f.js                       0.62 kB │ gzip:   0.37 kB
ℹ .nuxt/dist/client/_nuxt/404.41dd8a51.js                            0.65 kB │ gzip:   0.46 kB
ℹ .nuxt/dist/client/_nuxt/ProsePre.2b584bd5.js                       0.68 kB │ gzip:   0.36 kB
ℹ .nuxt/dist/client/_nuxt/page.ea6c7be2.js                           0.71 kB │ gzip:   0.45 kB
ℹ .nuxt/dist/client/_nuxt/profile.e9b41aea.js                        0.77 kB │ gzip:   0.49 kB
ℹ .nuxt/dist/client/_nuxt/IconCSS.30833fda.js                        0.81 kB │ gzip:   0.52 kB
ℹ .nuxt/dist/client/_nuxt/ContentList.6fa6fc87.js                    0.93 kB │ gzip:   0.51 kB
ℹ .nuxt/dist/client/_nuxt/ContentRenderer.e9ca07f7.js                1.27 kB │ gzip:   0.64 kB
ℹ .nuxt/dist/client/_nuxt/client-only.8703f75b.js                    1.41 kB │ gzip:   0.72 kB
ℹ .nuxt/dist/client/_nuxt/default.a14dc33a.js                        1.48 kB │ gzip:   0.92 kB
ℹ .nuxt/dist/client/_nuxt/ContentNavigation.53f39847.js              1.81 kB │ gzip:   0.97 kB
ℹ .nuxt/dist/client/_nuxt/ContentSlot.0eaea7a6.js                    1.86 kB │ gzip:   0.88 kB
ℹ .nuxt/dist/client/_nuxt/error-500.4aff308f.js                      1.88 kB │ gzip:   0.99 kB
ℹ .nuxt/dist/client/_nuxt/ContentDoc.ed25408c.js                     2.10 kB │ gzip:   0.99 kB
ℹ .nuxt/dist/client/_nuxt/error-404.94621128.js                      2.25 kB │ gzip:   1.16 kB
ℹ .nuxt/dist/client/_nuxt/asyncData.10558113.js                      2.51 kB │ gzip:   1.06 kB
ℹ .nuxt/dist/client/_nuxt/ContentQuery.64b516c7.js                   2.53 kB │ gzip:   1.06 kB
ℹ .nuxt/dist/client/_nuxt/nuxt-link.aaad69fe.js                      4.36 kB │ gzip:   1.87 kB
ℹ .nuxt/dist/client/_nuxt/query.ea984376.js                          4.45 kB │ gzip:   2.12 kB
ℹ .nuxt/dist/client/_nuxt/Footer.vue.970a56ed.js                     5.05 kB │ gzip:   2.39 kB
ℹ .nuxt/dist/client/_nuxt/workbox-window.prod.es5.a7b12eab.js        5.29 kB │ gzip:   2.20 kB
ℹ .nuxt/dist/client/_nuxt/Result.651ebdca.js                         7.50 kB │ gzip:   3.13 kB
ℹ .nuxt/dist/client/_nuxt/_uid_.a8a7e240.js                         14.14 kB │ gzip:   5.69 kB
ℹ .nuxt/dist/client/_nuxt/Space.90ad828a.js                         19.19 kB │ gzip:   6.03 kB
ℹ .nuxt/dist/client/_nuxt/client-db.f66ab83a.js                     20.53 kB │ gzip:   8.51 kB
ℹ .nuxt/dist/client/_nuxt/ContentRendererMarkdown.vue.4efb6c02.js   23.30 kB │ gzip:   8.28 kB
ℹ .nuxt/dist/client/_nuxt/account.5eeb5403.js                       26.66 kB │ gzip:   8.95 kB
ℹ .nuxt/dist/client/_nuxt/UserButton.vue.22bf3942.js                29.32 kB │ gzip:   9.71 kB
ℹ .nuxt/dist/client/_nuxt/LoginCard.vue.a8aaf5fd.js                 29.37 kB │ gzip:   8.68 kB
ℹ .nuxt/dist/client/_nuxt/Avatar.e8379413.js                        46.48 kB │ gzip:  14.55 kB
ℹ .nuxt/dist/client/_nuxt/is.ac0b77f8.js                            79.84 kB │ gzip:  23.78 kB
ℹ .nuxt/dist/client/_nuxt/request.c83dd9d7.js                       89.87 kB │ gzip:  26.73 kB
ℹ .nuxt/dist/client/_nuxt/index.c6dcf5e8.js                        263.45 kB │ gzip:  90.44 kB
ℹ .nuxt/dist/client/_nuxt/entry.4039184a.js                        370.72 kB │ gzip: 121.05 kB
ℹ ✓ built in 27.59s
✔ Client built in 27770ms
ℹ Building server...
ℹ vite v4.3.9 building SSR bundle for production...
ℹ transforming...
ℹ ✓ 1970 modules transformed.
ℹ rendering chunks...
ℹ .nuxt/dist/server/_nuxt/_uid_-styles.cde7159a.mjs              0.08 kB
ℹ .nuxt/dist/server/_nuxt/ProseCode-styles.3777c2e0.mjs          0.08 kB
ℹ .nuxt/dist/server/_nuxt/IconCSS-styles.12e6bd8b.mjs            0.15 kB
ℹ .nuxt/dist/server/_nuxt/default-styles.346fb7ae.mjs            0.15 kB
ℹ .nuxt/dist/server/_nuxt/ProsePre-styles.0ca83b2e.mjs           0.15 kB
ℹ .nuxt/dist/server/_nuxt/error-404-styles.370a1a57.mjs          0.15 kB
ℹ .nuxt/dist/server/_nuxt/error-500-styles.2c4b8775.mjs          0.15 kB
ℹ .nuxt/dist/server/_nuxt/entry-styles.275f8606.mjs              0.28 kB
ℹ .nuxt/dist/server/_nuxt/index-styles.026a5436.mjs              0.28 kB
ℹ .nuxt/dist/server/styles.mjs                                   1.44 kB
ℹ .nuxt/dist/server/_nuxt/entry-styles-2.mjs-79390a7c.js         0.13 kB │ map:   0.11 kB
ℹ .nuxt/dist/server/_nuxt/ProsePre-styles-1.mjs-5a26a4b2.js      0.24 kB │ map:   0.12 kB
ℹ .nuxt/dist/server/_nuxt/ProseCode-styles-1.mjs-e1c2c459.js     0.24 kB │ map:   0.12 kB
ℹ .nuxt/dist/server/_nuxt/entry-styles-3.mjs-d99a84d6.js         0.28 kB │ map:   0.11 kB
ℹ .nuxt/dist/server/_nuxt/server-placeholder-21f2a07c.js         0.30 kB │ map:   0.55 kB
ℹ .nuxt/dist/server/_nuxt/default-styles-1.mjs-0227ae6a.js       0.33 kB │ map:   0.11 kB
ℹ .nuxt/dist/server/_nuxt/index-styles-2.mjs-7b2a7cd9.js         0.40 kB │ map:   0.11 kB
ℹ .nuxt/dist/server/_nuxt/IconCSS-styles-1.mjs-01901a35.js       0.52 kB │ map:   0.11 kB
ℹ .nuxt/dist/server/_nuxt/entry-styles-1.mjs-af82f154.js         0.57 kB │ map:   0.11 kB
ℹ .nuxt/dist/server/_nuxt/index-styles-1.mjs-94a04d77.js         0.57 kB │ map:   0.11 kB
ℹ .nuxt/dist/server/_nuxt/index-styles-4.mjs-957631b7.js         0.59 kB │ map:   0.11 kB
ℹ .nuxt/dist/server/_nuxt/_uid_-styles-1.mjs-e3bf9699.js         0.59 kB │ map:   0.11 kB
ℹ .nuxt/dist/server/_nuxt/DocumentDrivenNotFound-aa15fa44.js     0.67 kB │ map:   0.59 kB
ℹ .nuxt/dist/server/_nuxt/preview-d3b7ca92.js                    0.84 kB │ map:   2.01 kB
ℹ .nuxt/dist/server/_nuxt/DocumentDrivenEmpty-6617fd94.js        0.86 kB │ map:   0.97 kB
ℹ .nuxt/dist/server/_nuxt/client-only-5c59a7ab.js                0.92 kB │ map:   3.25 kB
ℹ .nuxt/dist/server/_nuxt/Markdown-424e8858.js                   1.04 kB │ map:   0.13 kB
ℹ .nuxt/dist/server/_nuxt/ProseCode-e42c7be6.js                  1.18 kB │ map:   0.14 kB
ℹ .nuxt/dist/server/_nuxt/ProseHr-4192608f.js                    1.37 kB │ map:   0.14 kB
ℹ .nuxt/dist/server/_nuxt/index-styles-3.mjs-70d958d4.js         1.41 kB │ map:   0.11 kB
ℹ .nuxt/dist/server/_nuxt/island-renderer-b62cb5b3.js            1.45 kB │ map:   1.47 kB
ℹ .nuxt/dist/server/_nuxt/ProseP-04351769.js                     1.46 kB │ map:   0.14 kB
ℹ .nuxt/dist/server/_nuxt/ProseEm-648c2321.js                    1.47 kB │ map:   0.14 kB
ℹ .nuxt/dist/server/_nuxt/ProseLi-135fd923.js                    1.47 kB │ map:   0.14 kB
ℹ .nuxt/dist/server/_nuxt/ProseOl-6fae938b.js                    1.47 kB │ map:   0.14 kB
ℹ .nuxt/dist/server/_nuxt/ProseTd-bf46552d.js                    1.47 kB │ map:   0.14 kB
ℹ .nuxt/dist/server/_nuxt/ProseTh-fc0bd994.js                    1.47 kB │ map:   0.14 kB
ℹ .nuxt/dist/server/_nuxt/ProseTr-55f00116.js                    1.47 kB │ map:   0.14 kB
ℹ .nuxt/dist/server/_nuxt/ProseUl-1093a207.js                    1.47 kB │ map:   0.14 kB
ℹ .nuxt/dist/server/_nuxt/ProseTable-fd3ebdbf.js                 1.49 kB │ map:   0.15 kB
ℹ .nuxt/dist/server/_nuxt/ProseTbody-d29a9828.js                 1.49 kB │ map:   0.15 kB
ℹ .nuxt/dist/server/_nuxt/ProseThead-8597c550.js                 1.49 kB │ map:   0.15 kB
ℹ .nuxt/dist/server/_nuxt/ProseStrong-8d2127ee.js                1.49 kB │ map:   0.15 kB
ℹ .nuxt/dist/server/_nuxt/ProseCodeInline-9ec04edb.js            1.51 kB │ map:   0.15 kB
ℹ .nuxt/dist/server/_nuxt/ProseBlockquote-058fcb1d.js            1.52 kB │ map:   0.15 kB
ℹ .nuxt/dist/server/_nuxt/help-cb48e253.js                       1.74 kB │ map:   0.15 kB
ℹ .nuxt/dist/server/_nuxt/login-e8e5a94f.js                      1.85 kB │ map:   0.16 kB
ℹ .nuxt/dist/server/_nuxt/ProseH1-01f220d1.js                    2.08 kB │ map:   0.85 kB
ℹ .nuxt/dist/server/_nuxt/ProseH2-0f7cbb9e.js                    2.09 kB │ map:   0.85 kB
ℹ .nuxt/dist/server/_nuxt/ProseH3-50bb1fb3.js                    2.09 kB │ map:   0.85 kB
ℹ .nuxt/dist/server/_nuxt/ProseH4-4cbf1004.js                    2.09 kB │ map:   0.85 kB
ℹ .nuxt/dist/server/_nuxt/ProseH5-631bbeb1.js                    2.09 kB │ map:   0.85 kB
ℹ .nuxt/dist/server/_nuxt/ProseH6-65e1dea3.js                    2.09 kB │ map:   0.85 kB
ℹ .nuxt/dist/server/_nuxt/ProseA-71683372.js                     2.14 kB │ map:   0.17 kB
ℹ .nuxt/dist/server/_nuxt/ProsePre-16ad70f4.js                   2.17 kB │ map:   0.17 kB
ℹ .nuxt/dist/server/_nuxt/error-500-styles-1.mjs-16f19614.js     2.17 kB │ map:   0.12 kB
ℹ .nuxt/dist/server/_nuxt/page-4164654e.js                       2.18 kB │ map:   0.16 kB
ℹ .nuxt/dist/server/_nuxt/profile-ae580145.js                    2.25 kB │ map:   0.86 kB
ℹ .nuxt/dist/server/_nuxt/ProseImg-f76fa3a3.js                   2.34 kB │ map:   1.50 kB
ℹ .nuxt/dist/server/_nuxt/default-b27b7af0.js                    2.49 kB │ map:   0.16 kB
ℹ .nuxt/dist/server/_nuxt/IconCSS-9a52e92f.js                    2.73 kB │ map:   2.04 kB
ℹ .nuxt/dist/server/_nuxt/ContentList-ad05aeee.js                3.08 kB │ map:   2.98 kB
ℹ .nuxt/dist/server/_nuxt/error-500-5da44ead.js                  3.46 kB │ map:   3.84 kB
ℹ .nuxt/dist/server/_nuxt/ContentRenderer-2dac74cb.js            3.52 kB │ map:   3.53 kB
ℹ .nuxt/dist/server/_nuxt/error-404-styles-1.mjs-c9df1e5c.js     3.92 kB │ map:   0.12 kB
ℹ .nuxt/dist/server/_nuxt/error-404-f7d84d77.js                  4.36 kB │ map:   5.88 kB
ℹ .nuxt/dist/server/_nuxt/Space-236c5c14.js                      4.41 kB │ map:  10.49 kB
ℹ .nuxt/dist/server/_nuxt/ContentNavigation-20f244e2.js          4.43 kB │ map:   5.95 kB
ℹ .nuxt/dist/server/_nuxt/ContentSlot-8e36a608.js                4.80 kB │ map:   7.92 kB
ℹ .nuxt/dist/server/_nuxt/nuxt-link-bfd6e4d7.js                  5.99 kB │ map:  13.27 kB
ℹ .nuxt/dist/server/_nuxt/ContentQuery-e0e70f65.js               6.61 kB │ map:   9.07 kB
ℹ .nuxt/dist/server/_nuxt/entry-styles-4.mjs-c247eaa0.js         7.13 kB │ map:   0.11 kB
ℹ .nuxt/dist/server/_nuxt/ContentDoc-afe0e3d6.js                 7.91 kB │ map:  11.02 kB
ℹ .nuxt/dist/server/_nuxt/query-b6f7f0b2.js                     12.40 kB │ map:  29.28 kB
ℹ .nuxt/dist/server/_nuxt/Footer-499f39f2.js                    12.81 kB │ map:   6.51 kB
ℹ .nuxt/dist/server/_nuxt/ContentRendererMarkdown-911b5b08.js   13.61 kB │ map:  21.01 kB
ℹ .nuxt/dist/server/_nuxt/Checkbox-514ba933.js                  14.51 kB │ map:  32.18 kB
ℹ .nuxt/dist/server/_nuxt/404-c73b2f8f.js                       14.56 kB │ map:  16.14 kB
ℹ .nuxt/dist/server/_nuxt/client-db-a2b99181.js                 15.77 kB │ map:  28.68 kB
ℹ .nuxt/dist/server/_nuxt/Avatar-65bf0a5b.js                    19.75 kB │ map:  36.97 kB
ℹ .nuxt/dist/server/_nuxt/account-c70918a6.js                   28.27 kB │ map: 290.31 kB
ℹ .nuxt/dist/server/_nuxt/Button-8a0ffd83.js                    28.57 kB │ map:  56.32 kB
ℹ .nuxt/dist/server/_nuxt/use-message-4f93202a.js               34.95 kB │ map:  72.12 kB
ℹ .nuxt/dist/server/_nuxt/UserButton-3f71a1db.js                41.53 kB │ map:  71.23 kB
ℹ .nuxt/dist/server/_nuxt/Popover-92134865.js                   58.35 kB │ map: 114.26 kB
ℹ .nuxt/dist/server/_nuxt/index-98abe647.js                     72.36 kB │ map:  81.11 kB
ℹ .nuxt/dist/server/_nuxt/_uid_-ba84379d.js                     88.76 kB │ map:  71.57 kB
ℹ .nuxt/dist/server/_nuxt/request-ba8369df.js                   91.51 kB │ map: 178.68 kB
ℹ .nuxt/dist/server/_nuxt/LoginCard-0bc3d1c9.js                246.73 kB │ map: 261.69 kB
ℹ .nuxt/dist/server/server.mjs                                 345.88 kB │ map: 720.16 kB
ℹ ✓ built in 19.91s
✔ Server built in 19932ms
[nitro] ✔ Generated public .output/public
[nitro] ℹ Initializing prerenderer
[nitro] ℹ Prerendering 1 routes
[nitro]   ├─ /api/_content/cache.1694016842216.json (223ms)
00:15:13:766 IM SDK [debug]:  init Msync by connection
00:15:13:770 IM SDK [debug]:  open
00:15:14:445 IM SDK [info]:  httpType: https
00:15:14:923 IM SDK [debug]:  websockt onOpen
00:15:15:43 IM SDK [debug]:  dispatch event: onConnected 
00:15:15:107 IM SDK [debug]:  pull unread message [
  MetaQueue {
    queue: JID { name: '224836051861506', domain: 'conference.easemob.com' },
    n: 1
  }
]
00:15:15:123 IM SDK [debug]:  sendBackqueue
00:15:15:179 IM SDK [debug]:  onMucMessage MUCBody {
  to: [],
  mucId: JID {
    appKey: 'cx-dev#cxstudy',
    name: '224836051861506',
    domain: 'conference.easemob.com'
  },
  operation: 17,
  from: JID {
    appKey: 'cx-dev#cxstudy',
    name: '127579421',
    domain: 'easemob.com'
  },
  isChatroom: false
}
00:15:15:179 IM SDK [debug]:  dispatch event: onGroupChange {
  type: 'memberJoinPublicGroupSuccess',
  owner: '127579421',
  gid: '224836051861506',
  from: '127579421',
  fromJid: JID {
    appKey: 'cx-dev#cxstudy',
    name: '127579421',
    domain: 'easemob.com'
  },
  to: '',
  toJid: [],
  chatroom: false,
  status: null
}
00:15:15:180 IM SDK [debug]:  dispatch event: onGroupEvent {
  operation: 'memberPresence',
  id: '224836051861506',
  from: '127579421'
}
00:15:15:180 IM SDK [debug]:  sendLastSession

PWA v0.16.4
mode      generateSW
precache  89 entries (1318.39 KiB)
files generated
  .output/public/sw.js
  .output/public/workbox-56a10583.js
[nitro] ℹ Building Nitro Server (preset: node-server)
00:15:17:415 IM SDK [debug]:  init Msync by connection
00:15:17:415 IM SDK [debug]:  open
00:15:17:973 IM SDK [info]:  httpType: https
00:15:20:312 IM SDK [debug]:  websockt onOpen
00:15:22:860 IM SDK [debug]:  dispatch event: onConnected 
00:15:23:378 IM SDK [debug]:  received message: CABAAUoLCgIIABiDypvapjE=
00:15:23:386 IM SDK [debug]:  received message: CABAAEocCgIIABDtyZvapjEY0JmA6q3jlL0QQIXKm9qmMQ==
00:15:45:656 IM SDK [debug]:  websocket onClose
00:15:45:656 IM SDK [debug]:  websocket provision error
00:15:45:656 IM SDK [debug]:  dispatch event: onError {
  type: 40,
  message: 'provision error',
  data: i {
    type: 'close',
    bubbles: false,
    cancelable: false,
    timeStamp: 1694016945484,
    wasClean: true,
    code: 401,
    reason: 'normal closed'
  }
}
00:15:45:657 IM SDK [debug]:  dispatch event: onDisconnected 
00:15:53:428 IM SDK [debug]:  websocket onClose
00:15:53:428 IM SDK [debug]:  websocket provision error
00:15:53:428 IM SDK [debug]:  dispatch event: onError {
  type: 40,
  message: 'provision error',
  data: i {
    type: 'close',
    bubbles: false,
    cancelable: false,
    timeStamp: 1694016953421,
    wasClean: true,
    code: 401,
    reason: 'normal closed'
  }
}
00:15:53:429 IM SDK [debug]:  dispatch event: onDisconnected 
[nitro] ✔ Nitro server built
  ├─ .output/server/chunks/_..._.mjs (2.9 kB) (1.09 kB gzip)
  ├─ .output/server/chunks/_..._.mjs.map (1.72 kB) (434 B gzip)
  ├─ .output/server/chunks/_cid_.get.mjs (40 B) (60 B gzip)
  ├─ .output/server/chunks/_cid_.get.mjs.map (96 B) (99 B gzip)
  ├─ .output/server/chunks/app/_nuxt/_uid_-ba84379d.mjs (90.1 kB) (13.1 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/_uid_-ba84379d.mjs.map (68.2 kB) (10.5 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/_uid_-styles.cde7159a.mjs (641 B) (383 B gzip)
  ├─ .output/server/chunks/app/_nuxt/_uid_-styles.cde7159a.mjs.map (311 B) (200 B gzip)
  ├─ .output/server/chunks/app/_nuxt/404-c73b2f8f.mjs (15.5 kB) (4.84 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/404-c73b2f8f.mjs.map (10.1 kB) (2.08 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/account-c70918a6.mjs (29.4 kB) (7.56 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/account-c70918a6.mjs.map (34.7 kB) (6.6 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/Avatar-65bf0a5b.mjs (19.5 kB) (4.71 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/Avatar-65bf0a5b.mjs.map (17.9 kB) (3.75 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/Button-8a0ffd83.mjs (28.1 kB) (6.15 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/Button-8a0ffd83.mjs.map (26.4 kB) (5.01 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/Checkbox-514ba933.mjs (14.3 kB) (3.81 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/Checkbox-514ba933.mjs.map (12 kB) (2.71 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/client-db-a2b99181.mjs (16.6 kB) (4.7 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/client-db-a2b99181.mjs.map (16.9 kB) (3.74 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/client-only-5c59a7ab.mjs (923 B) (474 B gzip)
  ├─ .output/server/chunks/app/_nuxt/client-only-5c59a7ab.mjs.map (999 B) (433 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ContentDoc-afe0e3d6.mjs (8.82 kB) (2.67 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/ContentDoc-afe0e3d6.mjs.map (7.35 kB) (1.71 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/ContentList-ad05aeee.mjs (3.94 kB) (1.41 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/ContentList-ad05aeee.mjs.map (2.35 kB) (724 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ContentNavigation-20f244e2.mjs (5.3 kB) (1.92 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/ContentNavigation-20f244e2.mjs.map (3.84 kB) (1.18 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/ContentQuery-e0e70f65.mjs (7.47 kB) (2.1 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/ContentQuery-e0e70f65.mjs.map (6.29 kB) (1.27 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/ContentRenderer-2dac74cb.mjs (4.36 kB) (1.53 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/ContentRenderer-2dac74cb.mjs.map (2.95 kB) (851 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ContentRendererMarkdown-911b5b08.mjs (14.5 kB) (4.23 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/ContentRendererMarkdown-911b5b08.mjs.map (16.1 kB) (3.24 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/ContentSlot-8e36a608.mjs (4.8 kB) (1.51 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/ContentSlot-8e36a608.mjs.map (5.92 kB) (1.44 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/default-b27b7af0.mjs (3.28 kB) (1.22 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/default-b27b7af0.mjs.map (1.48 kB) (495 B gzip)
  ├─ .output/server/chunks/app/_nuxt/default-styles.346fb7ae.mjs (436 B) (242 B gzip)
  ├─ .output/server/chunks/app/_nuxt/default-styles.346fb7ae.mjs.map (339 B) (216 B gzip)
  ├─ .output/server/chunks/app/_nuxt/DocumentDrivenEmpty-6617fd94.mjs (860 B) (474 B gzip)
  ├─ .output/server/chunks/app/_nuxt/DocumentDrivenEmpty-6617fd94.mjs.map (938 B) (425 B gzip)
  ├─ .output/server/chunks/app/_nuxt/DocumentDrivenNotFound-aa15fa44.mjs (671 B) (373 B gzip)
  ├─ .output/server/chunks/app/_nuxt/DocumentDrivenNotFound-aa15fa44.mjs.map (649 B) (343 B gzip)
  ├─ .output/server/chunks/app/_nuxt/entry-styles.275f8606.mjs (7.92 kB) (2.78 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/entry-styles.275f8606.mjs.map (673 B) (292 B gzip)
  ├─ .output/server/chunks/app/_nuxt/error-404-f7d84d77.mjs (5.14 kB) (2.03 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/error-404-f7d84d77.mjs.map (2.37 kB) (782 B gzip)
  ├─ .output/server/chunks/app/_nuxt/error-404-styles.370a1a57.mjs (4.03 kB) (1.27 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/error-404-styles.370a1a57.mjs.map (346 B) (215 B gzip)
  ├─ .output/server/chunks/app/_nuxt/error-500-5da44ead.mjs (4.25 kB) (1.72 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/error-500-5da44ead.mjs.map (1.73 kB) (601 B gzip)
  ├─ .output/server/chunks/app/_nuxt/error-500-styles.2c4b8775.mjs (2.29 kB) (873 B gzip)
  ├─ .output/server/chunks/app/_nuxt/error-500-styles.2c4b8775.mjs.map (346 B) (216 B gzip)
  ├─ .output/server/chunks/app/_nuxt/Footer-499f39f2.mjs (12.9 kB) (3.36 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/Footer-499f39f2.mjs.map (11.8 kB) (2.29 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/help-cb48e253.mjs (2.58 kB) (985 B gzip)
  ├─ .output/server/chunks/app/_nuxt/help-cb48e253.mjs.map (993 B) (420 B gzip)
  ├─ .output/server/chunks/app/_nuxt/IconCSS-9a52e92f.mjs (3.52 kB) (1.35 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/IconCSS-9a52e92f.mjs.map (2.37 kB) (793 B gzip)
  ├─ .output/server/chunks/app/_nuxt/IconCSS-styles.12e6bd8b.mjs (626 B) (317 B gzip)
  ├─ .output/server/chunks/app/_nuxt/IconCSS-styles.12e6bd8b.mjs.map (339 B) (216 B gzip)
  ├─ .output/server/chunks/app/_nuxt/index-98abe647.mjs (73.7 kB) (13 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/index-98abe647.mjs.map (62.8 kB) (9.98 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/index-styles.026a5436.mjs (2.78 kB) (880 B gzip)
  ├─ .output/server/chunks/app/_nuxt/index-styles.026a5436.mjs.map (684 B) (297 B gzip)
  ├─ .output/server/chunks/app/_nuxt/island-renderer-b62cb5b3.mjs (2.31 kB) (893 B gzip)
  ├─ .output/server/chunks/app/_nuxt/island-renderer-b62cb5b3.mjs.map (948 B) (425 B gzip)
  ├─ .output/server/chunks/app/_nuxt/login-e8e5a94f.mjs (2.71 kB) (1.07 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/login-e8e5a94f.mjs.map (1.04 kB) (431 B gzip)
  ├─ .output/server/chunks/app/_nuxt/LoginCard-0bc3d1c9.mjs (249 kB) (33.3 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/LoginCard-0bc3d1c9.mjs.map (181 kB) (26 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/Markdown-424e8858.mjs (1.04 kB) (530 B gzip)
  ├─ .output/server/chunks/app/_nuxt/Markdown-424e8858.mjs.map (1.03 kB) (448 B gzip)
  ├─ .output/server/chunks/app/_nuxt/nuxt-link-bfd6e4d7.mjs (6.08 kB) (1.71 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/nuxt-link-bfd6e4d7.mjs.map (5.87 kB) (1.44 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/page-4164654e.mjs (3.04 kB) (1.17 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/page-4164654e.mjs.map (1.26 kB) (451 B gzip)
  ├─ .output/server/chunks/app/_nuxt/Popover-92134865.mjs (57.5 kB) (11.1 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/Popover-92134865.mjs.map (56.9 kB) (9.78 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/preview-d3b7ca92.mjs (773 B) (354 B gzip)
  ├─ .output/server/chunks/app/_nuxt/preview-d3b7ca92.mjs.map (908 B) (401 B gzip)
  ├─ .output/server/chunks/app/_nuxt/profile-ae580145.mjs (3.11 kB) (1.21 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/profile-ae580145.mjs.map (1.95 kB) (636 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseA-71683372.mjs (3 kB) (1.12 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseA-71683372.mjs.map (1.5 kB) (572 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseBlockquote-058fcb1d.mjs (2.37 kB) (911 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseBlockquote-058fcb1d.mjs.map (933 B) (395 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseCode-e42c7be6.mjs (1.13 kB) (521 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseCode-e42c7be6.mjs.map (1.21 kB) (453 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseCode-styles.3777c2e0.mjs (300 B) (203 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseCode-styles.3777c2e0.mjs.map (323 B) (201 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseCodeInline-9ec04edb.mjs (2.36 kB) (909 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseCodeInline-9ec04edb.mjs.map (933 B) (393 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseEm-648c2321.mjs (2.32 kB) (903 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseEm-648c2321.mjs.map (916 B) (386 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseH1-01f220d1.mjs (2.94 kB) (1.13 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseH1-01f220d1.mjs.map (1.7 kB) (607 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseH2-0f7cbb9e.mjs (2.95 kB) (1.13 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseH2-0f7cbb9e.mjs.map (1.72 kB) (611 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseH3-50bb1fb3.mjs (2.95 kB) (1.13 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseH3-50bb1fb3.mjs.map (1.72 kB) (612 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseH4-4cbf1004.mjs (2.95 kB) (1.13 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseH4-4cbf1004.mjs.map (1.72 kB) (611 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseH5-631bbeb1.mjs (2.95 kB) (1.13 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseH5-631bbeb1.mjs.map (1.72 kB) (612 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseH6-65e1dea3.mjs (2.95 kB) (1.13 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseH6-65e1dea3.mjs.map (1.72 kB) (612 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseHr-4192608f.mjs (2.22 kB) (870 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseHr-4192608f.mjs.map (785 B) (355 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseImg-f76fa3a3.mjs (3.21 kB) (1.2 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseImg-f76fa3a3.mjs.map (1.93 kB) (647 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseLi-135fd923.mjs (2.32 kB) (903 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseLi-135fd923.mjs.map (916 B) (386 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseOl-6fae938b.mjs (2.32 kB) (903 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseOl-6fae938b.mjs.map (916 B) (386 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseP-04351769.mjs (2.32 kB) (902 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseP-04351769.mjs.map (914 B) (386 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ProsePre-16ad70f4.mjs (2.12 kB) (793 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ProsePre-16ad70f4.mjs.map (2.1 kB) (692 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ProsePre-styles.0ca83b2e.mjs (337 B) (205 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ProsePre-styles.0ca83b2e.mjs.map (342 B) (212 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseStrong-8d2127ee.mjs (2.35 kB) (907 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseStrong-8d2127ee.mjs.map (925 B) (392 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseTable-fd3ebdbf.mjs (2.34 kB) (904 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseTable-fd3ebdbf.mjs.map (923 B) (390 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseTbody-d29a9828.mjs (2.34 kB) (907 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseTbody-d29a9828.mjs.map (923 B) (390 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseTd-bf46552d.mjs (2.32 kB) (903 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseTd-bf46552d.mjs.map (916 B) (388 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseTh-fc0bd994.mjs (2.32 kB) (903 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseTh-fc0bd994.mjs.map (916 B) (387 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseThead-8597c550.mjs (2.34 kB) (907 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseThead-8597c550.mjs.map (923 B) (390 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseTr-55f00116.mjs (2.32 kB) (903 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseTr-55f00116.mjs.map (916 B) (387 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseUl-1093a207.mjs (2.32 kB) (904 B gzip)
  ├─ .output/server/chunks/app/_nuxt/ProseUl-1093a207.mjs.map (916 B) (386 B gzip)
  ├─ .output/server/chunks/app/_nuxt/query-b6f7f0b2.mjs (12.5 kB) (3.9 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/query-b6f7f0b2.mjs.map (15.3 kB) (3.39 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/request-ba8369df.mjs (91 kB) (18.6 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/request-ba8369df.mjs.map (88.7 kB) (14.8 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/server-placeholder-21f2a07c.mjs (303 B) (226 B gzip)
  ├─ .output/server/chunks/app/_nuxt/server-placeholder-21f2a07c.mjs.map (322 B) (221 B gzip)
  ├─ .output/server/chunks/app/_nuxt/Space-236c5c14.mjs (4.41 kB) (1.47 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/Space-236c5c14.mjs.map (4.63 kB) (1.27 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/use-message-4f93202a.mjs (34.9 kB) (7.45 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/use-message-4f93202a.mjs.map (35.5 kB) (6.29 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/UserButton-3f71a1db.mjs (42.5 kB) (9.42 kB gzip)
  ├─ .output/server/chunks/app/_nuxt/UserButton-3f71a1db.mjs.map (39.1 kB) (7.46 kB gzip)
  ├─ .output/server/chunks/app/client.manifest.mjs (34.3 kB) (2.53 kB gzip)
  ├─ .output/server/chunks/app/client.manifest.mjs.map (18.2 kB) (1.48 kB gzip)
  ├─ .output/server/chunks/app/server.mjs (324 kB) (63.6 kB gzip)
  ├─ .output/server/chunks/app/server.mjs.map (261 B) (186 B gzip)
  ├─ .output/server/chunks/app/styles.mjs (1.51 kB) (495 B gzip)
  ├─ .output/server/chunks/app/styles.mjs.map (849 B) (285 B gzip)
  ├─ .output/server/chunks/error-500.mjs (4.26 kB) (1.82 kB gzip)
  ├─ .output/server/chunks/error-500.mjs.map (237 B) (174 B gzip)
  ├─ .output/server/chunks/handlers/renderer.mjs (11.3 kB) (3.54 kB gzip)
  ├─ .output/server/chunks/handlers/renderer.mjs.map (503 B) (241 B gzip)
  ├─ .output/server/chunks/index.get.mjs (2.99 kB) (1.04 kB gzip)
  ├─ .output/server/chunks/index.get.mjs.map (2.21 kB) (467 B gzip)
  ├─ .output/server/chunks/index.get2.mjs (2.38 kB) (841 B gzip)
  ├─ .output/server/chunks/index.get2.mjs.map (1.8 kB) (408 B gzip)
  ├─ .output/server/chunks/index.mjs (808 B) (379 B gzip)
  ├─ .output/server/chunks/index.mjs.map (741 B) (295 B gzip)
  ├─ .output/server/chunks/index.post.mjs (1.48 kB) (566 B gzip)
  ├─ .output/server/chunks/index.post.mjs.map (446 B) (213 B gzip)
  ├─ .output/server/chunks/login.post.mjs (2.64 kB) (1.01 kB gzip)
  ├─ .output/server/chunks/login.post.mjs.map (1.87 kB) (481 B gzip)
  ├─ .output/server/chunks/logout.post.mjs (1.85 kB) (726 B gzip)
  ├─ .output/server/chunks/logout.post.mjs.map (964 B) (281 B gzip)
  ├─ .output/server/chunks/monitor.post.mjs (2.02 kB) (765 B gzip)
  ├─ .output/server/chunks/monitor.post.mjs.map (1.09 kB) (336 B gzip)
  ├─ .output/server/chunks/multipart-parser.mjs (5.89 kB) (2.37 kB gzip)
  ├─ .output/server/chunks/multipart-parser.mjs.map (253 B) (182 B gzip)
  ├─ .output/server/chunks/nitro/node-server.mjs (439 kB) (112 kB gzip)
  ├─ .output/server/chunks/nitro/node-server.mjs.map (12.3 kB) (1.94 kB gzip)
  ├─ .output/server/chunks/raw/content-index.mjs (161 B) (152 B gzip)
  ├─ .output/server/chunks/raw/content-index.mjs.map (105 B) (103 B gzip)
  ├─ .output/server/chunks/raw/content-navigation.mjs (199 B) (186 B gzip)
  ├─ .output/server/chunks/raw/content-navigation.mjs.map (110 B) (105 B gzip)
  ├─ .output/server/chunks/raw/help.mjs (15.8 kB) (3.58 kB gzip)
  ├─ .output/server/chunks/raw/help.mjs.map (96 B) (99 B gzip)
  ├─ .output/server/chunks/rollup/_virtual_head-static.mjs (1.08 kB) (550 B gzip)
  ├─ .output/server/chunks/rollup/_virtual_head-static.mjs.map (111 B) (112 B gzip)
  ├─ .output/server/chunks/rollup/_virtual_spa-template.mjs (783 B) (469 B gzip)
  ├─ .output/server/chunks/rollup/_virtual_spa-template.mjs.map (112 B) (112 B gzip)
  ├─ .output/server/chunks/sign_all.post.mjs (1.93 kB) (745 B gzip)
  ├─ .output/server/chunks/sign_all.post.mjs.map (927 B) (309 B gzip)
  ├─ .output/server/chunks/sign_by_code.post.mjs (2.49 kB) (966 B gzip)
  ├─ .output/server/chunks/sign_by_code.post.mjs.map (1.47 kB) (398 B gzip)
  ├─ .output/server/chunks/sign_by_gesture.post.mjs (2.5 kB) (972 B gzip)
  ├─ .output/server/chunks/sign_by_gesture.post.mjs.map (1.47 kB) (403 B gzip)
  ├─ .output/server/chunks/sign_by_qrcode.post.mjs (2.54 kB) (990 B gzip)
  ├─ .output/server/chunks/sign_by_qrcode.post.mjs.map (1.55 kB) (421 B gzip)
  ├─ .output/server/chunks/sign_history.post.mjs (1.51 kB) (577 B gzip)
  ├─ .output/server/chunks/sign_history.post.mjs.map (499 B) (232 B gzip)
  ├─ .output/server/chunks/sign.post.mjs (1.5 kB) (569 B gzip)
  ├─ .output/server/chunks/sign.post.mjs.map (464 B) (214 B gzip)
  ├─ .output/server/chunks/sign.post2.mjs (1.92 kB) (780 B gzip)
  ├─ .output/server/chunks/sign.post2.mjs.map (1.01 kB) (311 B gzip)
  ├─ .output/server/chunks/signUp.post.mjs (1.93 kB) (793 B gzip)
  ├─ .output/server/chunks/signUp.post.mjs.map (852 B) (279 B gzip)
  ├─ .output/server/chunks/unmonitor.post.mjs (2.12 kB) (746 B gzip)
  ├─ .output/server/chunks/unmonitor.post.mjs.map (1.31 kB) (361 B gzip)
  ├─ .output/server/chunks/update_setting.post.mjs (1.82 kB) (687 B gzip)
  ├─ .output/server/chunks/update_setting.post.mjs.map (895 B) (288 B gzip)
  ├─ .output/server/index.mjs (1.24 kB) (462 B gzip)
  └─ .output/server/package.json (7.87 kB) (2.37 kB gzip)
Σ Total size: 27.8 MB (6.3 MB gzip)
[nitro] ✔ You can preview this build using node .output/server/index.mjs

> [email protected] preview /home/sign/chaoxing-sign
> nuxi preview --dotenv .env.production

Nuxi 3.6.5
ℹ Node.js version: 18.14.1
ℹ Preset: node-server
ℹ Working dir: .output
ℹ Starting preview command: node ./server/index.mjs

Listening on http://[::]:8050
00:16:18:612 IM SDK [debug]:  init Msync by connection
00:16:18:616 IM SDK [debug]:  open
00:16:18:871 IM SDK [info]:  httpType: https
00:16:19:251 IM SDK [debug]:  websockt onOpen
00:16:19:357 IM SDK [debug]:  dispatch event: onConnected 
00:16:20:439 IM SDK [debug]:  init Msync by connection
00:16:20:440 IM SDK [debug]:  open
00:16:20:640 IM SDK [info]:  httpType: https
00:16:21:22 IM SDK [debug]:  websockt onOpen
00:16:21:117 IM SDK [debug]:  dispatch event: onConnected 
00:16:21:168 IM SDK [debug]:  received message: CABAAUoLCgIIABiUkZ/apjE=
00:16:21:177 IM SDK [debug]:  received message: CABAAEocCgIIABD+kJ/apjEY0JmAnNLqlL0QQJeRn9qmMQ==
00:16:49:406 IM SDK [debug]:  websocket onClose
00:16:49:406 IM SDK [debug]:  websocket provision error
00:16:49:406 IM SDK [debug]:  dispatch event: onError {
  type: 40,
  message: 'provision error',
  data: i {
    type: 'close',
    bubbles: false,
    cancelable: false,
    timeStamp: 1694017009404,
    wasClean: true,
    code: 401,
    reason: 'normal closed'
  }
}
00:16:49:408 IM SDK [debug]:  dispatch event: onDisconnected 
00:16:51:170 IM SDK [debug]:  websocket onClose
00:16:51:170 IM SDK [debug]:  websocket provision error
00:16:51:170 IM SDK [debug]:  dispatch event: onError {
  type: 40,
  message: 'provision error',
  data: i {
    type: 'close',
    bubbles: false,
    cancelable: false,
    timeStamp: 1694017011169,
    wasClean: true,
    code: 401,
    reason: 'normal closed'
  }
}
00:16:51:170 IM SDK [debug]:  dispatch event: onDisconnected 

docker部署问题

^C[root@VM-20-17-centos chaoxing-sign]docker buildx build . -t chaoxing-sign:latest
[+] Building 30.2s (3/3) FINISHED
=> [internal] load build definition from Dockerfile 0.0s
=> => transferring dockerfile: 627B 0.0s
=> [internal] load .dockerignore 0.1s
=> => transferring context: 173B 0.0s
=> ERROR [internal] load metadata for docker.io/library/node:18-alpine 30.1s

[internal] load metadata for docker.io/library/node:18-alpine:


error: failed to solve: rpc error: code = Unknown desc = failed to solve with frontend dockerfile.v0: failed to create LLB definition: unexpected status code [manifests 18-alpine]: 403 Forbidden

这是什么问题 请教一下如何解决

Feat: 多个不同类型签到优化

当同时有多个不同类型的签到出现,如同时有二维码和手势签到。则二维码签到由于代码优
先执行会将其他类型签到挤掉。建议有多类型签到时,能重新唤起被挤掉的签到

还有一个是/auth/login登录后有时不会自动跳转回首页。大概率发生在直接访问/auth/login

如何设置监听间隔频率

作者nb!这个项目非常的实用。
但是我有一个问题,每次监听功能的时间间隔有点长,我想缩短监听频率,我可以自定义吗

如何收集隐私信息?

隐私声明: 本应用会收集部分用户信息,用于优化应用体验,不会将数据用于任何途径,介意者请勿使用。
收集信息的代码片段在哪
没找到在哪

浏览器监听失败

node:18-alpine使用的是linux-musl-openssl-3.0.x
缺少了报错,添加了又好了

还有Docker中AUTH_ORIGIN似乎没生效。登录仍然会跳转回localhost

[bug]NUXT_IM_INIT_CONNECT 自动重连失败

环境变量里 开启 NUXT_IM_INIT_CONNECT=true # 启动时是否自动重连
无法自动重连

TIME_STAMP IM SDK [debug]:  dispatch event: onConnected
TIME_STAMP IM SDK [debug]:  received message: [MESSAGE ENCODED]
[nitro] [unhandledRejection] Error: decode message fail.
    at e.<anonymous> (FILE_PATH:LINE_NUMBER:COL_NUMBER)
    at FILE_PATH:LINE_NUMBER:COL_NUMBER
    at Object.next (FILE_PATH:LINE_NUMBER:COL_NUMBER)
    at FILE_PATH:LINE_NUMBER:COL_NUMBER
    at new Promise (<anonymous>)
    at e.Y (FILE_PATH:LINE_NUMBER:COL_NUMBER)
    at FILE_PATH:LINE_NUMBER:COL_NUMBER
    at _.u [as onmessage] (FILE_PATH:LINE_NUMBER:COL_NUMBER)
    at t.dispatchEvent (FILE_PATH:LINE_NUMBER:COL_NUMBER)
    at FILE_PATH:LINE_NUMBER:COL_NUMBER
TIME_STAMP IM SDK [debug]:  received message: [MESSAGE ENCODED]
[nitro] [unhandledRejection] Error: decode message fail.
    at e.<anonymous> (FILE_PATH:LINE_NUMBER:COL_NUMBER)
    at FILE_PATH:LINE_NUMBER:COL_NUMBER
    at Object.next (FILE_PATH:LINE_NUMBER:COL_NUMBER)
    at FILE_PATH:LINE_NUMBER:COL_NUMBER
    at new Promise (<anonymous>)
    at e.Y (FILE_PATH:LINE_NUMBER:COL_NUMBER)
    at FILE_PATH:LINE_NUMBER:COL_NUMBER
    at _.u [as onmessage] (FILE_PATH:LINE_NUMBER:COL_NUMBER)
    at t.dispatchEvent (FILE_PATH:LINE_NUMBER:COL_NUMBER)
    at FILE_PATH:LINE_NUMBER:COL_NUMBER
TIME_STAMP IM SDK [debug]:  received message: [MESSAGE ENCODED]
[nitro] [unhandledRejection] Error: decode message fail.
    at e.<anonymous> (FILE_PATH:LINE_NUMBER:COL_NUMBER)
    at FILE_PATH:LINE_NUMBER:COL_NUMBER
    at Object.next (FILE_PATH:LINE_NUMBER:COL_NUMBER)
    at FILE_PATH:LINE_NUMBER:COL_NUMBER
    at new Promise (<anonymous>)
    at e.Y (FILE_PATH:LINE_NUMBER:COL_NUMBER)
    at FILE_PATH:LINE_NUMBER:COL_NUMBER
    at _.u [as onmessage] (FILE_PATH:LINE_NUMBER:COL_NUMBER)
    at t.dispatchEvent (FILE_PATH:LINE_NUMBER:COL_NUMBER)
    at FILE_PATH:LINE_NUMBER:COL_NUMBER
TIME_STAMP IM SDK [debug]:  websocket onClose
TIME_STAMP IM SDK [info]:  reconnect: time 1
TIME_STAMP IM SDK [info]:  reconnect sock.readyState:  3
TIME_STAMP IM SDK [debug]:  dispatch event: onReconnecting
TIME_STAMP IM SDK [info]:  login sock.readyState:  3
TIME_STAMP IM SDK [debug]:  websockt onOpen
TIME_STAMP IM SDK [debug]:  websocket onClose
TIME_STAMP IM SDK [info]:  reconnect: time 2
TIME_STAMP IM SDK [info]:  reconnect sock.readyState:  3
TIME_STAMP IM SDK [debug]:  dispatch event: onReconnecting
TIME_STAMP IM SDK [debug]:  refresh dns config when websocket close
TypeError: p.global.request is not a function
    at FILE_PATH:LINE_NUMBER:COL_NUMBER
    at new Promise (<anonymous>)
    at Object.d [as wxRequest] (FILE_PATH:LINE_NUMBER:COL_NUMBER)
    at Object.l [as ajax] (FILE_PATH:LINE_NUMBER:COL_NUMBER)
    at e.$ (FILE_PATH:LINE_NUMBER:COL_NUMBER)
    at Timeout._onTimeout (FILE_PATH:LINE_NUMBER:COL_NUMBER)
    at listOnTimeout (node:internal/timers:573:17)
    at process.processTimers (node:internal/timers:514:7)
TIME_STAMP IM SDK [info]:  login sock.readyState:  3
TIME_STAMP IM SDK [debug]:  websockt onOpen
TIME_STAMP IM SDK [debug]:  websocket onClose
TIME_STAMP IM SDK [debug]:  dispatch event: onDisconnected
TIME_STAMP IM SDK [debug]:  reconnect fail

之前添加的学习通账号消失,且无法再次添加

同步账号时提示:
Invalid prisma.cxAccount.update() invocation: { where: { uid: undefined, ? AND?: CxAccountWhereInput | CxAccountWhereInput[], ? OR?: CxAccountWhereInput[], ? NOT?: CxAccountWhereInput | CxAccountWhereInput[], ? username?: StringFilter | String, ? password?: StringFilter | String, ? cookies?: JsonNullableListFilter, ? info?: JsonFilter, ? lastLoginTime?: DateTimeFilter | DateTime, ? setting?: JsonFilter, ? userId?: StringFilter | String, ? courses?: CourseListRelationFilter, ? signlogs?: SignLogListRelationFilter, ? User?: UserRelationFilter | UserWhereInput }, data: { lastLoginTime: new Date("2023-09-15T13:20:15.874Z") } } Argument where of type CxAccountWhereUniqueInput needs at least one of uid or uid arguments. Available options are listed in green.

docker用户构建失败的看看有没有设置Dockerfile文件中PostgreSQL 数据库地址

直接上方法,docker构建PostgreSQL 数据库
docker pull postgres

docker volume create postgre-data

docker run -id --name=postgresql -v postgre-data:/var/lib/postgresql/data -p 5432:5432 -e POSTGRES_PASSWORD=123456 -e LANG=C.UTF-8 postgres

自己改上面数据库密码,用户名是postgres不用改 详细参考 https://developer.aliyun.com/article/1240243

当然有巨佬也可以编译个镜像放docker镜像仓库上,然后和PostgreSQL 数据库的镜像一起写个docker-compose.yml

大体如下(参考隔壁签到项目)
说白了就是写好PostgreSQL 的端口和chaoxing-sign的配置,两镜像一起拉无脑完成
https://github.com/qd-today/qd/blob/master/docker-compose.yml

位置签到validate错误

如题,在我测试位置签到功能时,坐标设置正确,返回错误:课程: 测试 活动: 签到 [位置签到]结果: validate
在课程详情里提示的错误为:
Invalid prisma.signLog.createMany() invocation: { data: [ { id: "4000079911032_240133230", activityId: "4000079911032", isSigned: false, result: "不在可签到范围内", time: new Date("2023-11-22T01:15:03.921Z"), accountId: "240133230" }, { id: "4000079909989_240133230", activityId: "4000079909989", isSigned: false, result: "不在可签到范围内", time: new Date("2023-11-22T01:15:03.921Z"), accountId: "240133230" } ], skipDuplicates: true } Argument activityName is missing.
事实上,坐标定位的经纬度设置应该是没有错的。当我在手机上打开签到界面的时候,此时在服务器中进行位置签到操作,就能签到成功了;但是只要不打开就不能在服务器中签到。

限制注册账号数量

希望可限制注册账号数量 避免被滥用
使用BasicAuth认证的话 会使登录变得繁琐

自建服务器时添加某星账号时报错

添加账号时报Cookie has domain set to a public suffix错误,账号无法添加
无论是使用pnpm run preview还是npm run start:pm2都会出现此错误

[nuxt] [request error] [unhandled] [500] Cookie has domain set to a public suffix
  at Request._beforeError (./server/node_modules/got/dist/source/core/index.js:310:21)  
  at Request._onResponseBase (./server/node_modules/got/dist/source/core/index.js:625:22)  
  at process.processTicksAndRejections (node:internal/process/task_queues:95:5)  
  at async Request._onResponse (./server/node_modules/got/dist/source/core/index.js:765:13)  
  at CookieJar.setCookie (./server/node_modules/tough-cookie/lib/cookie.js:1186:15)  
  at ./server/node_modules/universalify/index.js:13:12  
  at new Promise (<anonymous>)  
  at CookieJar.setCookie (./server/node_modules/universalify/index.js:7:14)  
  at ./server/node_modules/got/dist/source/core/index.js:612:82  
  at Array.map (<anonymous>)  
  at Request._onResponseBase (./server/node_modules/got/dist/source/core/index.js:612:39)  
  at Request._onResponse (./server/node_modules/got/dist/source/core/index.js:765:24)  
  at ClientRequest.<anonymous> (./server/node_modules/got/dist/source/core/index.js:783:23)  
  at Object.onceWrapper (node:events:632:26)

测试请求地址为ip+端口域名+端口,依旧还是会报以上错误
该条请求报500 Internal Server Error错误
求大佬们解惑

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.