pgator 0.3.4
Application server that transforms JSON-RPC calls into SQL queries for PostgreSQL
To use this package, run the following command in your project's root directory:
Manual usage
Put the following dependency into your project's dependences section:
pgator
<img align="right" src="pgator.png" />
Application server that transforms JSON-RPC calls into SQL queries for PostgreSQL.
Technical documentation (ongoing)
###Quick start guide
####Dlang stuff installation (Debian example)
Since pgator written in the Dlang you will need to install the DMD or LDC2 compiler and the DUB package builder:
$ cat /etc/apt/sources.list.d/d-apt.list
deb http://netcologne.dl.sourceforge.net/project/d-apt dmd main #APT repository for D
$ sudo aptitude update
$ sudo aptitude install -t unstable ldc dub
####pgator downloading and building
$ git clone --depth=1 https://github.com/DSoftOut/pgator.git
$ cd pgator
$ dub build --build=release --compiler=ldc2
####Example config
{
"sqlServer":
{
"maxConn": 3,
"connString": "host=192.68.0.1 dbname=exampledb user=worker"
},
"sqlAuthVariables": {
"username": "pgator.username",
"password": "pgator.password"
},
"listenAddresses": ["127.0.0.1", "::1"],
"listenPort": 8080,
"sqlPgatorTable": "pgator_calls"
}
####RPC calls table example
Simple method code that just returns one passed argument:
SELECT method, sql_query, args, result_format FROM pgator_calls WHERE method = 'test.echo';
method | sql_query | args | result_format
-----------+---------------------------------+------------------+---------------
test.echo | select $1::text as passed_value | {value_for_echo} | CELL
(1 row)
JSON-RPC 2.0 methods calling:
At first, it is need to start pgator:
$ ./pgator --config=my_pgator.conf
Number of methods in the table "pgator_calls": 1, failed to prepare: 0
Listening for requests on http://127.0.0.1:8083/
Listening for requests on http://[::1]:8083/
(Option --check=true allows to check methods from table without server start.)
Calling a test method described in the previous table:
$ curl -X POST -H 'Content-Type: application/json' -H 'Accept: application/json' --data '
{
"jsonrpc": "2.0",
"method": "test.echo",
"params": { "value_for_echo": "Hello, world!" },
"id": 1
}' http://pgator-test-server.com:8080/
Response:
{"jsonrpc":"2.0","result":"Hello, world!","id":1}
####How to run pgator as daemon
Please use systemd, supervisor or somethig like that.
- Registered by Denis Feklushkin
- 0.3.4 released 9 years ago
- DSoftOut/pgator
- MIT
- Copyright © 2016
- Authors:
- Sub packages:
- pgator:test
- Dependencies:
- vibe-d-postgresql, vibe-d:http
- Versions:
-
0.3.18 2024-Feb-08 0.3.17 2020-Sep-16 0.3.16 2018-Dec-17 0.3.15 2018-Feb-27 0.3.14 2018-Feb-25 - Download Stats:
-
-
0 downloads today
-
0 downloads this week
-
0 downloads this month
-
180 downloads total
-
- Score:
- 0.1
- Short URL:
- pgator.dub.pm