1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/pyinjava-fastweixin

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
README.md 9.9 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 02.12.2024 11:14 302b21f

Быстрый запуск сервера на платформе WeChat

Автор: peiyu

QQ: 125331682 (http://wpa.qq.com/msgrd?v=3&uin=125331682&site=qq&menu=yes)

Техническая дискуссионная группа QQ: 367162748 (http://shang.qq.com/wpa/qunwpa?idkey=e279a5147f3cb248a536e118464c72068d9f6ef33278987e6f88a17aab603cbb)

Главная страница кода Cloud: https://gitee.com/pyinjava/fastweixin (https://gitee.com/pyinjava/fastweixin)

Build Status @peiyu on weibo Maven Central Circle CI Gitter License

Быстрое создание сервера для платформы WeChat

Простое инкапсулирование всех сообщений, взаимодействующих с сервером WeChat: текстовые сообщения, изображения, статьи и т. д.

Предоставлен контроллер на основе springmvc и servlet, интегрированный с привязкой к серверу WeChat и прослушиванием всех типов сообщений.

Наследование и переписывание для использования, очень удобно.

Поддержка высокоуровневого API, в рамках предоставляются MenuAPI, CustomAPI, QrcodeAPI, UserAPI, MediaAPI и OauthAPI для реализации всех функций высокого уровня, использование очень простое.

Внутренняя реализация автоматического обновления токена, не нужно больше беспокоиться о деталях токена.

Поддерживает безопасный режим сообщений WeChat, но из-за ограничений JDK необходимо изменить внутренние файлы jar JDK.

Официальный сайт для загрузки:

После загрузки и распаковки можно увидеть local_policy.jar, US_export_policy.jar и readme.txt. Если установлена JRE, поместите два файла jar в каталог %JRE_HOME%\lib\security и замените исходные файлы. Если установлен JDK, поместите два jar-файла в каталог %JDK_HOME%\jre\lib\security и замените оригинальные файлы.

Подробные документы (спасибо за организацию luozhuang)

[Учебник по fastweixin Framework 1] — как быстро создать Java-сервер для WeChat Public Platform за одну минуту (http://blog.csdn.net/luozhuang/article/details/51321485)

[fastweixin Framework Учебник 2] — проблема анализа XML с помощью weblogic javax.xml (http://blog.csdn.net/luozhuang/article/details/51322065)

[fastweixin Framework Учебник 3] — решение проблемы доступа к HTTPS-сайту в Java, сбой пути PKIX (http://blog.csdn.net/luozhuang/article/details/51322127)

[fastweixin Framework Учебник 4] — управление AccessToken и QYAPIConfig (http://blog.csdn.net/luozhuang/article/details/51322177)

[fastweixin Framework Учебник 5] — Управление членами отдела корпоративного номера (http://blog.csdn.net/luozhuang/article/details/51322220)

[fastweixin Framework Учебник 6] — активное push-уведомление для подписчиков корпоративного номера WeChat (http://blog.csdn.net/luozhuang/article/details/51322292)

[fastweixin Framework Учебник 7] — разработка пользовательского меню API (http://blog.csdn.net/luozhuang/article/details/51322516)

[fastwexin Framework Учебник 8] — временное управление материалами (http://blog.csdn.net/luozhuang/article/details/51444137)

[fastweixin Framework Учебник 9] — пример расширения API — QYOauthAPI (http://blog.csdn.net/luozhuang/article/details/51444222)

Метод интеграции проекта на основе Spring MVC

@RestController
@RequestMapping("/weixin")
public class WeixinController extends WeixinControllerSupport {
        private static final Logger log = LoggerFactory.getLogger(WeixinController.class);
        private static final String TOKEN = "myToken";
        // Установить TOKEN для привязки к серверу WeChat
        @Override
        protected String getToken() {
            return TOKEN;
        }
        // Использовать безопасный режим, установить APPID
        // Не обязательно переписывать, если требуется шифрование, переписать этот метод самостоятельно
        @Override
        protected String getAppId() {
            return null;
        }
        // Используйте безопасный режим, установите AESKey
        // Необязательно переписывать, при необходимости шифрования перепишите этот метод самостоятельно
        @Override
        protected String getAESKey() {
            return null;
        }
        // Переписать родительский метод для обработки соответствующего сообщения WeChat
        @Override
        protected BaseMsg handleTextMsg(TextReqMsg msg) {
            String content = msg.getContent();
            log.debug("Пользователь отправил контент на сервер:{}", content);
            вернуть новый TextMsg («Сервер отвечает на сообщение пользователя!»);
        }
        /*1.1 Версия нового дополнения, переписать родительский метод, добавить собственный обработчик сообщений WeChat
         * Это необязательно, описанный выше метод является унифицированным методом обработки всех текстовых сообщений, который будет выглядеть беспорядочно, если бизнес сложный.
         * Этот механизм предназначен для решения этой проблемы, каждый MessageHandle представляет собой бизнес, обрабатывающий только указанную часть сообщения.
         */
        @Override
        защищённый список<MessageHandle> initMessageHandles() {
                список<MessageHandle> handles = new ArrayList<MessageHandle>();
``` **Интеграция на основе проекта servlet**

```Java
public class WeixinServlet extends WeixinServletSupport {
    @Override
    protected WeixinSupport getWeixinSupport() {
        return new MyServletWeixinSupport();
    }
}
//Пользовательский обработчик сообщений для отправки и получения сообщений через WeChat
public class MyServletWeixinSupport extends WeixinSupport {
private static final Logger log = LoggerFactory.getLogger(MyServletWeixinSupport.class);
@Override
protected String getToken() {
    return "myToken";
}
@Override
protected BaseMsg handleTextMsg(TextReqMsg msg) {
    String content = msg.getContent();
    log.debug("Содержание, отправленное пользователем на сервер: {}", content);
    return new TextMsg("Ответ сервера пользователю!");
}
}

web.xml конфигурация

<servlet>
    <servlet-name>weixin</servlet-name>
    <servlet-class>xxx.xxx.WeixinServlet</servlet-class>
</servlet>

<servlet-mapping>
    <servlet-name>weixin</servlet-name>
    <url-pattern>/weixin</url-pattern>
</servlet-mapping>

Интеграция на основе Jfinal

public class MyJfinalController extends Controller {
    //Пользовательский обработчик сообщений
    private WeixinSupport support = new MyServletWeixinSupport();
    public void index() {
            HttpServletRequest request = getRequest();
            log.debug("method:{}", request.getMethod());
            //Привязка к серверу WeChat
            if ("GET".equalsIgnoreCase(request.getMethod().toUpperCase())) {
                support.bindServer(request, getResponse());
                renderNull();
            } else {
                //Обработка сообщения
                renderText(support.processRequest(request), "text/xml");
            }
        }
}

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/pyinjava-fastweixin.git
git@api.gitlife.ru:oschina-mirror/pyinjava-fastweixin.git
oschina-mirror
pyinjava-fastweixin
pyinjava-fastweixin
master