1414import json
1515import getpass
1616
17+
18+ def doSendRequest (url , requestMsg , headers ):
19+ result = None
20+ try :
21+ ##send request
22+ result = requests .post (url , data = json .dumps (requestMsg ), headers = headers )
23+ if result .status_code == 500 :
24+ print 'Request fail'
25+ print 'response status %s' % result .status_code
26+ print 'Error: %s' % result .json ()
27+ sys .exit (1 )
28+ except requests .exceptions .RequestException , e :
29+ print 'Exception!!!'
30+ print e
31+ sys .exit (1 )
32+ return result
33+
34+
1735## Perform authentication
1836def CreateAuthorization (username , password , appid ):
1937 token = None
@@ -22,22 +40,12 @@ def CreateAuthorization(username, password, appid):
2240 authenURL = 'https://api.trkd.thomsonreuters.com/api/TokenManagement/TokenManagement.svc/REST/Anonymous/TokenManagement_1/CreateServiceToken_1'
2341 headers = {'content-type' : 'application/json;charset=utf-8' }
2442 print '############### Sending Authentication request message to TRKD ###############'
25- try :
26- ##send request
27- result = requests .post (authenURL , data = json .dumps (authenMsg ), headers = headers )
28- if result .status_code == 200 :
29- print 'Authen success'
30- print 'response status %s' % (result .status_code )
31- ##get Token
32- token = result .json ()['CreateServiceToken_Response_1' ]['Token' ]
33- elif result .status_code == 500 :
34- print 'Request fail'
35- print 'response status %s' % (result .status_code )
36- print 'Error: %s' % (result .json ())
37- except requests .exceptions .RequestException as e :
38- print 'Exception!!!'
39- print e
40- sys .exit (1 )
43+ authenResult = doSendRequest (authenURL , authenMsg , headers )
44+ if authenResult is not None and authenResult .status_code == 200 :
45+ print 'Authen success'
46+ print 'response status %s' % (authenResult .status_code )
47+ ##get Token
48+ token = authenResult .json ()['CreateServiceToken_Response_1' ]['Token' ]
4149
4250 return token
4351
@@ -70,21 +78,10 @@ def RetrieveQuotes(token, appid):
7078 headers = {'content-type' : 'application/json;charset=utf-8' ,'X-Trkd-Auth-ApplicationID' : appid , 'X-Trkd-Auth-Token' : token }
7179
7280 print '############### Sending Quote request message to TRKD ###############'
73- try :
74- ##send request
75- quoteresult = requests .post (quoteURL , data = json .dumps (quoteRequestMsg ), headers = headers )
76- if quoteresult .status_code == 200 :
77- print 'Quote request success'
78- print quoteresult .json ()
79- else :
80- print 'Request fail'
81- print 'response status %s' % (quoteresult .status_code )
82- print 'Error: %s' % (quoteresult .json ())
83-
84- except requests .exceptions .RequestException as e :
85- print 'Exception!!!'
86- print e
87- sys .exit (1 )
81+ quoteResult = doSendRequest (quoteURL , quoteRequestMsg ,headers )
82+ if quoteResult is not None and quoteResult .status_code == 200 :
83+ print 'Quote response message: '
84+ print quoteResult .json ()
8885
8986
9087## ------------------------------------------ Main App ------------------------------------------ ##
@@ -94,10 +91,12 @@ def RetrieveQuotes(token, appid):
9491password = getpass .getpass (prompt = 'Please input password: ' )
9592appid = raw_input ('Please input appid: ' )
9693
94+
9795token = CreateAuthorization (username ,password ,appid )
9896print 'Token = %s' % (token )
99-
100- RetrieveQuotes (token ,appid )
97+ ## if authentiacation success, continue subscribing Quote
98+ if token is not None :
99+ RetrieveQuotes (token ,appid )
101100
102101
103102
0 commit comments