я постараюсь дать как можно больше подробностей об этом проекте. Прежде всего извините за мой английский, потому что это не мой родной язык :) Это не вопрос напрямую, это ваше мнение об архитектуре, я студент, а не профессиональный разработчик Google-расширений, поэтому я прошу ваших мнений. В настоящее время я разрабатываю расширение Google для интеграции веб-сайта Gmail с корпоративной CRM. Я провел много исследований и с каждым днем все больше запутывался, и в то же время я вижу много возможностей в этой архитектуре.
Окончательная архитектура, которую я решил сделать, следующая:
Расширение Google
- Background.js, file wich is going to send request to a CRM API using AJAX. At the same time is going to communicate with the next file Content.js using "chrome.runtime.onMessage.addListener" this way it allows me to answer request produced in the Gmail website as we will see after.
- Content.js, файл, который позволяет мне взаимодействовать с элементами DOM из интерфейса Gmail. Во многих исследованиях я видел множество способов «извлечь» элементы из интерфейса Gmail, но они похожи на «`zZ. I-TJ ...*», и я не хочу терять время на эту проблему, поэтому я решили использовать gmail.js, API с открытым исходным кодом для извлечения элементов и в то же время , самое главное, инжектировать элементы прямо в интерфейс. Здесь проблема в том, что используя Gmail.js как говорит автор:
#P4#
- Injected.js, файл, который реализует всю логику нажатия кнопок и в то же время показывает новую боковую панель рядом с почтовым ящиком или данными электронной почты, показывающую детали CRM. Здесь мы можем использовать класс из gmail.js.
CRM API, доступ к центральному хранилищу базы данных и ответ на запрос, созданный по его API, с использованием запросов JSON AJAX.
Вот наглядный пример архитектуры: Планирование архитектуры
Если у вас есть какое-то предложение, что-то, что может вызвать проблемы, просто совет, я уверен, все будет принято во внимание. Спасибо ;)
Я читал такие сообщения, как:
Я пытался:
- #P10# <блочная цитата> #P11# блочная цитата> #P12#
Если такой вопрос не разрешен, сообщите мне, и я удалю его или обновлю.