This commit is contained in:
2026-03-11 17:56:35 +03:00
parent 9e7307cae8
commit 87c265c7f6
3 changed files with 30 additions and 13 deletions

View File

@@ -31,42 +31,56 @@ class MessageService {
): Promise<R> { ): Promise<R> {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
service(request, (error, data) => { service(request, (error, data) => {
if (error) reject(error?.message) if (error) {
else resolve(data) console.log(error)
reject(error?.message)
} else resolve(data)
}) })
}) })
} }
getUser(req: GetUserRequest) { getUser(req: GetUserRequest) {
return this.toPromise<GetUserRequest, GetUserResponse>(req, this.client.getUser) return this.toPromise<GetUserRequest, GetUserResponse>(req, this.client.getUser.bind(this.client))
} }
listChat(req: ListChatRequest) { listChat(req: ListChatRequest) {
return this.toPromise<ListChatRequest, ListChatResponse>(req, this.client.listChat) return this.toPromise<ListChatRequest, ListChatResponse>(req, this.client.listChat.bind(this.client))
} }
createChat(req: CreateChatRequest) { createChat(req: CreateChatRequest) {
return this.toPromise<CreateChatRequest, CreateChatResponse>(req, this.client.createChat) return this.toPromise<CreateChatRequest, CreateChatResponse>(req, this.client.createChat.bind(this.client))
} }
createMessage(req: CreateMessageRequest) { createMessage(req: CreateMessageRequest) {
return this.toPromise<CreateMessageRequest, CreateMessageResponse>(req, this.client.createMessage) return this.toPromise<CreateMessageRequest, CreateMessageResponse>(req, this.client.createMessage.bind(this.client))
} }
listMessage(req: ListMessageRequest) { listMessage(req: ListMessageRequest) {
return this.toPromise<ListMessageRequest, ListMessageResponse>(req, this.client.listMessage) return this.toPromise<ListMessageRequest, ListMessageResponse>(req, this.client.listMessage.bind(this.client))
} }
listUser(req: ListUserRequest) { listUser(req: ListUserRequest) {
return this.toPromise<ListUserRequest, ListUserResponse>(req, this.client.listUser) return this.toPromise<ListUserRequest, ListUserResponse>(req, this.client.listUser.bind(this.client))
} }
getUserByEmail(req: GetUserByEmailRequest) { getUserByEmail(req: GetUserByEmailRequest) {
return this.toPromise<GetUserByEmailRequest, GetUserResponse>(req, this.client.getUserByEmail) return this.toPromise<GetUserByEmailRequest, GetUserResponse>(req, this.client.getUserByEmail.bind(this.client))
} }
getVersion() { getVersion() {
return this.toPromise<Empty, GetVersionResponse>({}, this.client.getVersion) console.log('get version')
return this.toPromise<Empty, GetVersionResponse>({}, this.client.getVersion.bind(this.client))
}
getVersion2(): Promise<any> {
return new Promise((resolve, reject) => {
this.client.getVersion({}, (error, data) => {
if (error) {
console.log(error)
reject(error?.message)
} else resolve(data)
})
})
} }
} }

View File

@@ -6,9 +6,11 @@ import { config } from './config.ts'
import { messageService } from './grpc/message.ts' import { messageService } from './grpc/message.ts'
export const handlers = { export const handlers = {
async getVersion() { async getVersion(req: Request) {
console.log('test')
try { try {
const res = await messageService.getVersion() const res = await messageService.getVersion()
console.log(res)
return Response.json(res) return Response.json(res)
} catch (error) { } catch (error) {
return Response.json({ message: 'Error' }, { status: HttpStatusCodes.BAD_REQUEST }) return Response.json({ message: 'Error' }, { status: HttpStatusCodes.BAD_REQUEST })
@@ -22,6 +24,7 @@ export const handlers = {
if (!email) return Response.json({ message: 'email required' }, { status: HttpStatusCodes.BAD_REQUEST }) if (!email) return Response.json({ message: 'email required' }, { status: HttpStatusCodes.BAD_REQUEST })
const userResponse = await messageService.getUserByEmail({ email: body.email }) const userResponse = await messageService.getUserByEmail({ email: body.email })
console.log(userResponse)
const user = userResponse.data const user = userResponse.data
if (!user) return Response.json({ message: 'Invalid email or password' }, { status: HttpStatusCodes.NOT_FOUND }) if (!user) return Response.json({ message: 'Invalid email or password' }, { status: HttpStatusCodes.NOT_FOUND })

View File

@@ -14,8 +14,8 @@ const server = Bun.serve({
const pathname = url.pathname const pathname = url.pathname
const method = req.method const method = req.method
if (pathname === '/version' && method === 'GET') return handlers.getVersion() if (pathname === '/api/version' && method === 'GET') return handlers.getVersion(req)
if (pathname === '/login' && method === 'POST') return handlers.login(req) if (pathname === '/api/login' && method === 'POST') return handlers.login(req)
if (pathname === '/ws') return upgrade(req, server) if (pathname === '/ws') return upgrade(req, server)
return new Response('Not found', { status: HttpStatusCodes.NOT_FOUND }) return new Response('Not found', { status: HttpStatusCodes.NOT_FOUND })