Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa noite galera, estou construindo um Webserver Rest com Python e Tornado.
A construção esta do seguinte modo:
BackEnd -> Python + Tornado na porta 8888
FrontEnd -> Apache + PHP na porta 80
Codigo do Python + Tornado
from datetime import date
import tornado.escape
import tornado.ioloop
import tornado.web
class VersionHandler(tornado.web.RequestHandler):
def get(self):
response = { 'version': '3.5.1',
'last_build': date.today().isoformat() }
self.write(response)
self.set_header("Content-Type", "application/json")
class GetGameByIdHandler(tornado.web.RequestHandler):
def get(self, id):
response = { 'id': int(id),
'name': 'Crazy Game',
'release_date': date.today().isoformat() }
self.write(response)
application = tornado.web.Application([
(r"/getgamebyid/([0-9]+)", GetGameByIdHandler),
(r"/version", VersionHandler)
])
if __name__ == "__main__":
application.listen(8888)
tornado.ioloop.IOLoop.instance().start()
Meu problema e conseguir acessar os dados no formato JSON usando o PHP.
Codigo do PHP
<?php
//phpinfo();
header('Content-Type: application/json; charset=utf-8');
//$url='http://192.168.0.9:8080/version';
//$url='http://127.0.0.1:8080/';
//$url='http://localhost:8080/version';
$url='http://localhost:8888/version';
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_TIMEOUT, 5);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$data = curl_exec($ch);
curl_close($ch);
echo $data;
?>
Se eu fizer um wget ou curl no link http://localhost:8888/version ele funciona sem problemas.
Inclusive eu ate fiz um script em python para ele ler o JSON e funciona também sem problemas.
Abaixo o código:
import urllib,json
url="http://localhost:8888/version"
response=urllib.urlopen(url)
data=json.loads(response.read())
print data
print data['version']
Como eu consigo fazer consultas com o PHP ao meu webserver rest JSON ??
Please se alguem souber ajude o amigo ;)
Carregando comentários...