Asim Aslam
563768b58a
v3 refactor ( #1868 )
...
* Move to v3
Co-authored-by: Ben Toogood <bentoogood@gmail.com>
2020-07-27 13:22:00 +01:00
Di Wu
f9bf562393
fix typo in comments ( #1840 )
...
* remove global error tracking
* rpc_server: fix invalid register err
* fix typo
Co-authored-by: Asim Aslam <asim@aslam.me>
2020-07-16 16:33:11 +01:00
97ae2979ad
pass request context from request rpc endpoints ( #1799 )
...
http middleware can add additional metadata to context,
for example tracing wrappers, pass down it to underlining
services
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2020-07-06 13:55:17 +01:00
ben-toogood
174e44b846
Deprecate client/selector ( #1767 )
...
* client/{grpc,rpc}: depricate selector (wip)
* {client,cmd}: remove client/selector
* deprecate client/selector
* router/static: fix lookup
* config/cmd: add support for legacy static selector flag
* config/cmd: add support for legacy dns selector flag
2020-07-01 17:06:59 +01:00
ben-toogood
104b7d8f8d
api/resolver: update resolver to enable subdomain routing ( #1747 )
...
* api/resolver: update domain / service prefix usage
* api/resolver/subdomain: implement subdomain resolver for domain resolution
* api/handler: fix tests
2020-06-26 14:28:18 +01:00
92e9d05432
api/handler/rpc: dont log error on normal websocket error code ( #1688 )
...
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2020-06-12 10:42:52 +01:00
90dd1f63c8
api/handler/rpc: fix encoding of inner message ( #1601 )
...
* api/handler/rpc: fix encoding of inner message
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2020-05-04 15:50:53 +03:00
6fa27373ed
bundle qson lib in util ( #1561 )
...
* copy qson from https://github.com/joncalhoun/qson
as author not want to maintain repo
* latest code contains our fix to proper decode strings
with escaped & symbol
* replace package in api/handler/rpc
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2020-04-23 11:08:09 +03:00
62cedf64da
api/router/registry: extract path based parameters from url to req ( #1530 )
...
* api/router/registry: extract path based parameters from url to req
* api/handler/rpc: fix empty body request parsing
* bundle grpc-gateway util funcs
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2020-04-15 17:50:51 +03:00
b700d425a4
api/handler/rpc: improvements and fixes ( #1535 )
...
* api/handler/rpc: fix empty body case
* api/handler/rpc: copy all request headers to metadata
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2020-04-15 01:37:15 +03:00
Asim Aslam
e515005083
Remove only allowing certain methods
2020-04-13 23:05:39 +01:00
Asim Aslam
a056bdce7c
fix metadata parsing
2020-04-12 14:40:37 +01:00
Asim Aslam
b08c636b44
fixup handler tests
2020-04-12 14:29:38 +01:00
Asim Aslam
962588b649
Strip MetadataKey global var
2020-04-12 11:16:08 +01:00
0a2363b49b
api minor improvements ( #1526 )
...
* api/handler/rpc: unblock all http methods and set Host meta
* api/router/static: add debug log
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2020-04-11 22:21:55 +03:00
Ben Toogood
4ff959ef50
Dynamic Namespace
2020-04-09 11:03:33 +01:00
Ben Toogood
3ede494945
Change import name
2020-04-09 10:32:08 +01:00
Ben Toogood
f102aba4c1
Fix HTTP tests
2020-04-09 10:28:38 +01:00
Asim Aslam
9a73828782
Remove unused handlers
2020-04-08 15:34:11 +01:00
6aaad7d63f
api/router/static: allow to specify body dst ( #1486 )
...
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2020-04-07 15:38:27 +01:00
bc7579f1d8
api/handler/rpc: fix panic on invalid error conversation ( #1483 )
...
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2020-04-04 00:55:15 +03:00
38aed6f0f6
api/handler/rpc: not log error on client disconnect ( #1482 )
...
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2020-04-04 00:37:18 +03:00
0241197c6a
api/handler/rpc: binary streaming support ( #1466 )
...
* api/handler/rpc: binary streaming support
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* fixup
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* fix
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* fix sec webscoekt protol
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2020-04-02 10:13:04 +01:00
7b7a859a03
api: use http request Clone ( #1458 )
...
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2020-04-01 01:50:37 +03:00
8a8742f867
api/handler/rpc: dont change types of url fields ( #1457 )
...
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2020-04-01 01:26:58 +03:00
1490aff38e
api/handler/rpc: correctly parse nested url vars ( #1455 )
...
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2020-04-01 00:23:17 +03:00
18061723bb
fix api metadata extract from context ( #1452 )
...
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2020-03-31 22:36:51 +03:00
d6bef84de0
api/handler/rpc: fix metadata cleanup ( #1451 )
...
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2020-03-31 21:59:35 +03:00
3d7d5ce6b4
api: add static router and improve path parser in rpc handler ( #1437 )
...
* api: add static router and improve path parser in rpc handler
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* expose metadata context key to be able to get unmodified map keys
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* server/grpc: fix jsonpb codec for protobuf msg
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* api/handler/rpc: write 204 status code when rsp is nil
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* api/handler/rpc: add check for nil response for non javascript
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2020-03-30 09:04:59 +01:00
b38da6ced0
api/handler/rpc: process all methods and merge url params to json body ( #1427 )
...
* api/handler/rpc: process all methods and merge url params to json body
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* add merge json test
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2020-03-27 07:59:31 +00:00
Asim Aslam
62f9a054a4
100mb ( #1421 )
2020-03-26 16:57:31 +00:00
02839cfba5
api/handler: use http.MaxBytesReader and buffer pool ( #1415 )
...
* api/handler: use http.MaxBytesReader
protect api handlers from OOM cases
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2020-03-26 14:29:28 +03:00
9826ddbd64
api/handler/rpc: log errors ( #1390 )
...
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2020-03-23 10:31:35 +03:00
7b385bf163
minimize allocations in logger and tunnel code ( #1323 )
...
* logs alloc
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* fix allocs
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* fix allocs
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* tunnel allocs
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* try to fix tunnel
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* cache cipher for send
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* more logger
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* more logger
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* more logger
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* more logger
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* more logger
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* more logger
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* more logger
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2020-03-11 17:55:39 +00:00
Asim Aslam
ed83c27f0e
add websocket streaming to api rpc handler ( #1326 )
2020-03-10 15:21:43 +00:00
117f56ebf7
prune util/log and user logger ( #1237 )
...
* prune util/log and user logger
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* plaintext logger
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* add newline
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2020-02-23 13:45:20 +00:00
58598d0fe0
fixes for safe conversation and avoid panics ( #1213 )
...
* fixes for safe convertation
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* fix client publish panic
If broker connect returns error we dont check it status and use
it later to publish message, mostly this is unexpected because
broker connection failed and we cant use it.
Also proposed solution have benefit - we flag connection status
only when we have succeseful broker connection
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
* api/handler/broker: fix possible broker publish panic
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2020-02-18 23:05:38 +00:00
Asim Aslam
d1d6eada98
parse url encoded form in rpc handler ( #1183 )
...
* parse url encoded form in rpc handler
* Remove comment
2020-02-11 11:27:16 +00:00
f23638c036
fix import paths for v2 release
...
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2020-01-30 14:44:40 +03:00
Asim Aslam
04dfe4e867
fix breaking test
2019-12-30 17:39:02 +00:00
Asim Aslam
e0078bbcd5
Remove use of config/cmd in api
2019-12-30 17:29:20 +00:00
a1eaf9cc20
linting fixes
...
Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2019-12-04 00:22:02 +03:00
Shu xian
5744050943
api event supports for GET url params ( #956 )
2019-11-18 16:37:45 +00:00
mirwaisx
0af8be35bb
-bugfix #889 set body corretly in case of missing content-type ( #950 )
2019-11-15 13:03:45 +00:00
tegk
f88518d994
used gofmt with -s flag on whole project
2019-11-01 15:07:53 +00:00
Asim Aslam
e0bf1c2283
Remove Port from registry
2019-07-08 08:01:42 +01:00
Asim Aslam
4b4ad68eb9
Change Publication to Event
2019-07-07 12:44:09 +01:00
Asim Aslam
4f982bb9cd
Default to json content-type in api
2019-06-24 14:49:19 +01:00
Asim Aslam
1b4005e9a5
Go fmt everything
2019-06-21 17:20:41 +01:00
Asim Aslam
ca5acba0c6
Move selector to client/selector
2019-06-21 15:13:54 +01:00