@@ -30,10 +30,11 @@ go get -u github.com/ranjanrak/dead-letter-queue
3030package main
3131
3232import (
33- " net/http"
34- " net/url"
33+ " fmt"
34+ " net/http"
35+ " net/url"
3536
36- deadletterqueue " github.com/ranjanrak/dead-letter-queue"
37+ deadletterqueue " github.com/ranjanrak/dead-letter-queue"
3738)
3839func main () {
3940 // Create new HTTP request queue instance
@@ -43,39 +44,44 @@ func main() {
4344 Ctx: nil ,
4445 QueueName: " " ,
4546 DeadHTTP: []int {400 , 403 , 429 , 500 , 502 },
46- })
47+ })
48+
49+ // Add post params
50+ postParam := url.Values {}
51+ postParam.Add (" exchange" , " NSE" )
52+ postParam.Add (" tradingsymbol" , " TCS" )
53+ postParam.Add (" transaction_type" , " BUY" )
54+ postParam.Add (" quantity" , " 1" )
55+ postParam.Add (" product" , " CNC" )
56+ postParam.Add (" order_type" , " MARKET" )
57+ postParam.Add (" validity" , " DAY" )
58+
59+ // Add request header
60+ var headers http.Header = map [string ][]string {}
61+ headers.Add (" x-kite-version" , " 3" )
62+ headers.Add (" authorization" , " token api_key:access_token" )
63+ headers.Add (" content-type" , " application/x-www-form-urlencoded" )
64+
4765 // Request message
48- queueMsg := deadletterqueue.InputMsg {
49- Name: " Place TCS Order" ,
50- Url: " https://api.kite.trade/orders/regular" ,
51- ReqMethod: " POST" ,
52- PostParam: map [string ]interface {}{
53- " exchange" : " NSE" ,
54- " tradingsymbol" : " TCS" ,
55- " transaction_type" : " BUY" ,
56- " quantity" : 1 ,
57- " product" : " CNC" ,
58- " order_type" : " MARKET" ,
59- " validity" : " DAY" ,
60- },
61- Headers: map [string ]interface {}{
62- " x-kite-version" : 3 ,
63- " authorization" : " token abcd123:efgh1234" ,
64- " content-type" : " application/x-www-form-urlencoded" ,
65- },
66- }
67-
68- // worker that adds message to http queue
69- err := httpQueue.AddMessage (queueMsg)
70- if err != nil {
71- fmt.Printf (" Error adding msg in the request queue : %v " , err)
72- }
73-
74- // worker that executes http request queues
75- httpQueue.ExecuteQueue ()
76-
77- // worker that executes only dead letter http queues
78- httpQueue.ExecuteDeadQueue ()
66+ reqMsgOrd := deadletterqueue.InputMsg {
67+ Name: " Place TCS Order" ,
68+ Url: " https://api.kite.trade/orders/regular" ,
69+ ReqMethod: " POST" ,
70+ PostParam: postParam,
71+ Headers: headers,
72+ }
73+
74+ // worker that adds message to redis queue
75+ err := httpQueue.AddMessage (reqMsgOrd)
76+ if err != nil {
77+ fmt.Printf (" Error adding msg in the request queue : %v " , err)
78+ }
79+
80+ // worker that executes http request queues
81+ httpQueue.ExecuteQueue ()
82+
83+ // worker that executes dead letter http queues
84+ httpQueue.ExecuteDeadQueue ()
7985}
8086```
8187
@@ -85,28 +91,21 @@ Request represents an HTTP request with all parameters.
8591
8692### Adding message
8793
88- Adding an HTTP message to the HTTP queue with all parameters.
94+ Adding an HTTP message to the request queue with all parameters.
8995
9096``` go
97+ // Add request header
98+ var headers http.Header = map [string ][]string {}
99+ headers.Add (" x-kite-version" , " 3" )
100+ headers.Add (" authorization" , " token api_key:access_token" )
101+
91102// Request message
92103queueMsg := deadletterqueue.InputMsg {
93- Name : " Place TCS Order" ,
94- Url : " https://api.kite.trade/orders/regular" ,
95- ReqMethod : " POST" ,
96- PostParam : map [string ]interface {}{
97- " exchange" : " NSE" ,
98- " tradingsymbol" : " TCS" ,
99- " transaction_type" : " BUY" ,
100- " quantity" : 1 ,
101- " product" : " CNC" ,
102- " order_type" : " MARKET" ,
103- " validity" : " DAY" ,
104- },
105- Headers : map [string ]interface {}{
106- " x-kite-version" : 3 ,
107- " authorization" : " token abcd123:efgh1234" ,
108- " content-type" : " application/x-www-form-urlencoded" ,
109- },
104+ Name : " Fetch order book" ,
105+ Url : " https://api.kite.trade/orders" ,
106+ ReqMethod : " GET" ,
107+ PostParam : nil ,
108+ Headers : headers,
110109}
111110err := httpQueue.AddMessage (queueMsg)
112111if err != nil {
@@ -116,7 +115,7 @@ if err != nil {
116115
117116### Delete message from the request queue
118117
119- Delete request message available in HTTP queue before it's execution with the input message ` Name ` .
118+ Delete request message available in the queue before it's execution with the input message ` Name ` .
120119
121120``` go
122121err := httpQueue.DeleteReqMsg (" Place TCS Order" )
0 commit comments