java - 尝试在 Spring Boot 应用程序中连接到 Telegram Bot 时出错

标签 java spring maven spring-boot telegram

我无法解决我的 Spring Boot 应用程序的问题,我尝试创建自己的 Telegram 机器人。 创建 Spring 容器并启动应用程序后,我在日志中看到相同的错误: Error logs

2019-06-17 23:26:33.117 ERROR 3340 --- [gram Connection] Telegram Bots Api : BOTSESSION

Bot Impl :

public TelegramBot(BotProperties botProperties) {
    this.botProperties = botProperties;
}

@PostConstruct
public void init() {
    TelegramBotsApi telegramBotsApi = new TelegramBotsApi();
    try {
        telegramBotsApi.registerBot(new TelegramBot(botProperties));
        logger.info("bot successfully register");
    } catch (TelegramApiException e) {
        logger.error(e.getMessage(), e);
    }
}

@Override
public void onUpdateReceived(Update update) {
    if (update.hasMessage()) {
        System.out.println(update.getMessage().getText());
    }
}

@Override
public String getBotUsername() {
    return botProperties.getBotName();
}

@Override
public String getBotToken() {
    return botProperties.getBotToken();
}
}

主类:

public class TelegramApplication {
    public static void main(String[] args) {
        ApiContextInitializer.init();
        SpringApplication.run(TelegramApplication.class, args);
    }
}

最佳答案

如果访问机器人,请验证一次只有一台服务器。 Telegram Bot 地址一次只能由一台服务器访问。如果您在本地有一台服务器,而另一台服务器在另一台服务器上运行,那么当您尝试在本地连接它时,它会抛出同样的错误。

如果您使用开发工具重建代码而不重新启动,请尝试停止应用程序并重新启动它。它应该可以工作。

关于java - 尝试在 Spring Boot 应用程序中连接到 Telegram Bot 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56638732/

相关文章:

java - Qt Jambi Javadoc 缺失

java - 尽管使用了正确的 Java 版本,但仍不受支持的主要版本和次要版本

java - Spring @RequestBody 和枚举值

java - Spring @Transactional 并发

java - 如何通过在 Spring 中乘以一些值来对结果进行排序?

java - 所有项目的 Maven 依赖关系直方图(使用频率)

Maven 仅对 Nexus 使用中央存储库

java - Bson - 如何将 JSON 转换为 List<Document> 并将 List<Document> 转换为 JSON?

java - 我可以在使用 JUnit 测试的公共(public)方法中完全省略私有(private)方法吗?

java - Java 中的排列然后排序