[Проект] letmegrpc

  1. На света съществува ето този проект. Взима gRPC дефиниция и по нея генерира web UI, който позволява изпълнението на rpc  заявка. Много прилича на swagger страница. Основният му проблем е, че се ползва малко трудно.

    Не виждаме всички service дефиниции и техните възможни методи на една страница. Когато искаме да изпълним заявка, пишем в браузъра нещо от сорта на http://localhost:8080/ServiceName/MethodName - трябва да знам точно кой метод на точно кой сървис искам да извикам и да напиша това в URL-а. За малки прото файлове работи, но когато сървисите и съответно методите станат повечко човек обикновено забравя и идва моментът "тука сега какво беше".

    Би било много готино, ако имаше и начин да си запазваш някаква заявка, така че да я покажеш на някого по-късно и дори дефиниране на колекция от заявки, която да изпълнява даден сценарий.

    Този проект има за цел да поправи тези 3 проблема, а може би и други, които със сигурност ще изникнат.

  2. Здравей,

    Притеснява ме каква част от този проект ще бъде реализирана на Go. До колкото разбрах от описанието ти, по-голямата част от трудността идва при разработване на графичната част на приложението -- това на Go ли планираш да направиш?

  3. В момента проекта използва рефлекшъни за да генерира не малко го код, и едновременно с това по една html форма, която потребител попълва за изпращане на rpc съобщение.

    Ако се ориентирам правилно има http сървър, но всички негови хендлъри са динамично генериран go код, който от своя страна генерира html страница, конкатенирайки стрингове. Тоест, когато бразърът изпрати заявка, та се обработва от генериран код, който генерира html съдържание. След това за изпращане на rpc съобщение се генерира още go код, който прави това. Двете неща са бая преплетени. Иска ми се да намаля генерирания код максимално много и да разделя сървъра от UI-я. Така би трябвало да ми е лесно да постигна крайната си цел, а именно да имам една страница, на която се вижда всичко. Мисля, че повече време ще отиде в писане и четене на go.

  4. На мен ми харесва. Може ли само да преговоря какво мислиш да направиш:

    • Възможност за това да се разглеждат различните налични дефиниции.
    • UI за изпращане на съобщенията с някоя дефиниция.

Трябва да сте влезли в системата, за да може да отговаряте на теми.