...
On peut ici imaginer un service rest répondant derrière http://localhost/cgi-bin/validate-example-sgc.py - on insérera la configuration suivante dans applicationContext-services.xml pour activer celà (notez que le applicationContext-services.xml par défaut ne propose pas par défaut un tel exemple ).
Bloc de code | ||
---|---|---|
| ||
<bean id="myRestValidateService" class="org.esupportail.sgc.services.RestValidateService"> <property name="restTemplate" ref="restTemplate"/> <property name="validateRestUrl" value="http://localhost/cgi-bin/validate-example-sgc.py?eppn=%s&csn=%s"/> <property name="invalidateRestUrl" value="http://localhost/cgi-bin/validate-example-sgc.py?eppn=%s&csn=%s"/> </bean> |
Un exemple Exemple d'un tel script cgi python validate-example-sgc.py est donné ici à tritre d'exemple simplement ici :
Bloc de code | ||
---|---|---|
| ||
#!/usr/bin/python # -*- coding: utf-8 -*- import cgi import requests arguments = cgi.FieldStorage() eppn = arguments['eppn'].value print "Content-Type: text/plain" print "" print eppn resp = requests.get(url = 'https://esup-sgc.univ-ville.fr/wsrest/api/get?eppn=%s' % eppn) csn = '' acccesControlId = '' data = resp.json() for user in data : for card in user['cards'] : if card['etat'] == 'ENABLED' : csn = card['csn'] acccesControlId = card['desfireIds']['access-control'] open_file = open('/opt/export-sgc/a.txt', 'a+b') open_file.write('card enabled for %s : csn -> %s, access-control : %s\n' % (eppn, csn, acccesControlId)) open_file.close() print 'OK' |
...