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

OSCHINA-MIRROR/1046102779-wx_relay_server

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

Сервер-посредник WeChat

Цель: Другие сервисы используют режим pull, осуществляя RPC-коммуникацию через rpcx для получения соответствующих токенов WeChat. Пользователь через стороннюю платформу официального аккаунта WeChat WeChat может получить соответствующие токены для своего публичного аккаунта и управляемого приложения. Данный сервис не должен простаивать более 10 минут (экземпляр автоматически запускает crontab). Основные компоненты, токен доступа и предварительный код авторизации для сторонних платформ официальных аккаунтов, а также токены доступа и обновления для авторизаторов официальных аккаунтов.

Преимущества: Сервер-посредник для официальных аккаунтов WeChat позволяет обновлять собственные токены платформы и токены управляемых публичных аккаунтов, освобождая разработчиков от необходимости вникать в логику работы сторонних платформ официальных аккаунтов. При этом экземпляры бизнес-логики могут быть перезапущены без какого-либо влияния на управляемые публичные аккаунты.

Способ хранения: Адреса RPC-сервисов и токены WeChat для публичных аккаунтов и самих публичных аккаунтов хранятся в etcd с использованием TTL-свойств etcd и механизма watch для обновления.

Меры по обеспечению надёжности нового сервиса

  1. После запуска сервиса сразу считываются все данные из etcd о платформах и публичных аккаунтах WeChat и загружаются в память. Также отслеживаются все токены.

Standard go get:

$ go get -v -u github.com/1046102779/wx_relay_server

Index

type WxRelayServer struct{}

// Получение базовой информации о платформе официального аккаунта, включая appid, токены и т. д.
func (t *WxRelayServer) GetOfficialAccountPlatformInfo(in *pb.OfficialAccountPlatform, out *pb.OfficialAccountPlatform) error

// Хранение информации о токенах управляемых публичных аккаунтов
func (t *WxRelayServer) StoreOfficialAccountInfo(in *pb.OfficialAccount, out *pb.OfficialAccount) error

// Получение информации о токене публичного аккаунта для использования в управлении публичными аккаунтами на сторонних платформах
func (t *WxRelayServer) GetOfficialAccountInfo(in *pb.OfficialAccount, out *pb.OfficialAccount) error

// Обновление component_verify_ticket и одновременное обновление других токенов на сервере-посреднике для публичных аккаунтов
func (t *WxRelayServer) RefreshComponentVerifyTicket(in *pb.ComponentVerifyTicket, out *pb.ComponentVerifyTicket) error

Примечание

  • «Пожалуйста, обратите внимание на мой GitHub: github.com/1046102779».
  • «Надеюсь на совместное развитие, если у вас возникнут вопросы по работе этого сервиса или проблемы с кодом, можете связаться со мной. Я люблю открытый исходный код и открыт для общения».
  • «Контакты: cdh_cjx@163.com».

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

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

1
https://api.gitlife.ru/oschina-mirror/1046102779-wx_relay_server.git
git@api.gitlife.ru:oschina-mirror/1046102779-wx_relay_server.git
oschina-mirror
1046102779-wx_relay_server
1046102779-wx_relay_server
master