import { WxServices } from '@/routes/wx/services.ts' import { simple } from './simple.ts' export const createLoginHtml = (wxService: WxServices) => { const redirectUrl = wxService.isNew ? '/user/info' : '/' return ` Wx Login
Login Success
Redirecting, please wait...
` } simple.get('/api/wx/login', async (req, res) => { try { const url = req.url const query = new URLSearchParams(url.split('?')[1]) const code = query.get('code') const state = query.get('state') if (!code) { res.end('code is required') return } const wxService = new WxServices() await wxService.login(code) if (wxService.isNew) { await wxService.getUserInfo() } res.setHeader('Content-Type', 'text/html') res.end(createLoginHtml(wxService)) } catch (e) { console.error(e) res.end('error') } }) simple.get('/api/wx/on-ai/login', async (req, res) => { const url = req.url const query = new URLSearchParams(url.split('?')[1]) const code = query.get('code') const state = query.get('state') const onAIBaseUrl = 'https://note.on-ai.ai' const newUrl = `${onAIBaseUrl}/api/wx/login?code=${code}&state=${state}` res.setHeader('Content-Type', 'text/html') res.end(``) })