1

このライブラリでテレグラムにログインしようとしています: https://github.com/Bannerets/tdl、電話番号とコードをフロントエンド経由で送信する必要があります。これを行う唯一の方法は、ソケットを使用することでした。 io、ソケットでプロミスを使用すると正常に機能しますが、2回実行しても何も起こりません。

バックエンド:

io.on('connection', async (socket) => {
      console.log('a user connected');

      await client.login(() => ({
        getPhoneNumber: () => {
          return new Promise((resolve, reject) => {
            socket.on('phone:submitted', async (msg) => {
              resolve(msg);
            });
          });
        },
        getAuthCode: () => {
          return new Promise((resolve, reject) => {
            socket.on('code:submitted', async (msg) => {
              resolve(msg);
            });
          });
        },
      }));
    });

フロントエンド:

    var socket = io('http://localhost:3000');

    socket.emit('phone:submitted', '+1234567890');

私がこれを置くだけなら:それは動作します:

io.on('connection', async (socket) => {
      console.log('a user connected');

      await client.login(() => ({
        getPhoneNumber: () => {
          return new Promise((resolve, reject) => {
            socket.on('phone:submitted', async (msg) => {
              resolve(msg);
            });
          });
        }
      }));
    });
4

0 に答える 0