Porkchop е прост HTTP-базирана информационна система за сървър написан на Python & Nbsp;. Пишеш плъгини за нея и тя реагира с данните, базирани на Вашето запитване.
Ето един пример:
Скот @ бийтбокс: ~% извиване HTTP: // Localhost: 5000 / cpuinfo
/ Cpuinfo / processor2 / FPU Да
/ Cpuinfo / processor2 / f00f_bug не
/ Cpuinfo / processor2 / cache_alignment 64
/ Cpuinfo / processor2 / vendor_id AuthenticAMD
/ cpuinfo / processor2 / знамена FPU
/ Cpuinfo / processor2 / bogomips 6384
/ Cpuinfo / processor2 / hlt_bug не
/ Cpuinfo / processor2 / apicid 2
/ Cpuinfo / processor2 / fpu_exception Да
/ Cpuinfo / processor2 / засилване 3
/ Cpuinfo / processor2 / WP Да
/ Cpuinfo / processor2 / братя и сестри 4
/ Cpuinfo / processor2 / модел 4
/ Cpuinfo / processor2 / coma_bug не
/ Cpuinfo / processor2 / fdiv_bug не
/ Cpuinfo / processor3 / FPU Да
/ Cpuinfo / processor3 / f00f_bug не
/ Cpuinfo / processor3 / cache_alignment 64
/ Cpuinfo / processor3 / vendor_id AuthenticAMD
/ cpuinfo / processor3 / знамена FPU
/ Cpuinfo / processor3 / bogomips 6384
/ Cpuinfo / processor3 / hlt_bug не
/ Cpuinfo / processor3 / apicid 3
/ Cpuinfo / processor3 / fpu_exception Да
/ Cpuinfo / processor3 / засилване 3
/ Cpuinfo / processor3 / WP Да
/ Cpuinfo / processor3 / братя и сестри 4
/ Cpuinfo / processor3 / модел 4
/ Cpuinfo / processor3 / coma_bug не
/ Cpuinfo / processor3 / fdiv_bug не
[Изрезка]
/ Час 1311387215
Скот @ бийтбокс: ~%
Тя може да се отговори с JSON чрез разширяване .json файл или създаване на Accept: заявление / JSON хедъра.
Скот @ бийтбокс: ~% извиване HTTP: // Localhost: 5000 / cpuinfo.json
{"Cpuinfo": {"processor2": {"FPU": "Да", "f00f_bug": "не", "cache_alignment": "64", "vendor_id": "AuthenticAMD", "знамена": "FPU" "bogomips": "6384", "hlt_bug": "не", "apicid": "2", "fpu_exception": "Да", "засилване": "3", "WP": "Да", " братя и сестри ":" 4 "," модел ":" 4 "," coma_bug ":" не "," fdiv_bug ":" не "}," processor3 ": {" FPU ":" Да "," f00f_bug ":" не "," cache_alignment ":" 64 "," vendor_id ":" AuthenticAMD "," знамена ":" FPU "," bogomips ":" 6384 "," hlt_bug ":" не "," apicid ":" 3 " "fpu_exception": "Да", "засилване": "3", "WP": "Да", "братя": "4", "модел": "4", "coma_bug": "не", " fdiv_bug ":" не "}," processor0 ": {" FPU ":" Да "," f00f_bug ":" не "," cache_alignment ":" 64 "," vendor_id ":" AuthenticAMD "," знамена ":" FPU "," bogomips ":" 6382 "," hlt_bug ":" не "," apicid ":" 0 "," fpu_exception ":" Да "," засилване ":" 3 "," WP ":" Да " , "братя": "4", "модел": "4", "coma_bug": "не", "fdiv_bug": "не"}, "processor1": {"FPU": "Да", "f00f_bug" : "не", "cache_alignment": "64", "vendor_id": "AuthenticAMD", "знамена": "FPU", "bogomips": "6384", "hlt_bug": "не", "apicid": " 1 "," fpu_exception ":" Да "," засилване ":" 3 "," WP ":" Да "," братя ":" 4 "," модел ":" 4 "," coma_bug ":" не " "fdiv_bug": "не"}}, "Време": "1311389934"}
Скот @ бийтбокс: ~%
<Силен> Монтаж
PIP инсталирате porkchop
или
питон setup.py инсталиране
<Силен> Писане Plugins
Това е доста лесно да се напише нов плъгин. Те са само на Python модули с някои общи характеристики:
- А плъгин трябва подклас porkchop.plugin.PorkchopPlugin.
- Клас В плъгин трябва да се суфикс с Plugin. Реалното му име на файла в директорията на плъгин трябва да съвпада с префикс. Например, FooPlugin ще бъде в файл foo.py на
- Клас В плъгин трябва да има метод get_data която връща речника на информацията, която се появи.
По подразбиране метод get_data плъгин ще се нарича само ако данните са повече от 60 секунда стария. Това може да се промени на база на една приставка, като зададете self.refresh в метод ___init___ класа си.
. Тези плъгини може да бъде поставен в директория по ваш избор, зареден чрез преминаване опцията -d да porkchop
<силни> Изисквания :
- <Ли > Python
Коментари не е намерена