Team Ai
Apppublic

cosmoEagle/leetcode-api

sourceHugging Faceupdated 2y agoView on Hugging Face
0likes
fetchUserDetails.ts40 linesDownload Raw Back to Controllers
1import { Response } from 'express';2import { UserData } from '../types';3 4const fetchUserDetails = async (5  options: { username: string; limit: number },6  res: Response,7  formatData: (data: UserData) => {},8  query: string9) => {10  try {11    const response = await fetch('https://leetcode.com/graphql', {12      method: 'POST',13      headers: {14        'Content-Type': 'application/json',15        Referer: 'https://leetcode.com',16      },17      body: JSON.stringify({18        query: query,19        variables: {20          username: options.username, //username required21          limit: options.limit, //only for submission22        },23      }),24    });25 26    const result = await response.json();27 28    if (result.errors) {29      return res.send(result);30    }31 32    return res.json(formatData(result.data));33  } catch (err) {34    console.error('Error: ', err);35    return res.send(err);36  }37};38 39export default fetchUserDetails;40