Merge pull request #617 from Sniedes722/master

Update Examples for 0.4.2
This commit is contained in:
Raphael Deem 2017-04-10 19:07:29 -07:00 committed by GitHub
commit 77a51c1e05
3 changed files with 30 additions and 15 deletions

View File

@ -1,5 +1,5 @@
from sanic import Sanic from sanic import Sanic
from sanic.response import json from sanic import response
import aiohttp import aiohttp
@ -9,20 +9,18 @@ async def fetch(session, url):
""" """
Use session object to perform 'get' request on url Use session object to perform 'get' request on url
""" """
async with session.get(url) as response: async with session.get(url) as result:
return await response.json() return await result.json()
@app.route("/") @app.route('/')
async def test(request): async def handle_request(request):
"""
Download and serve example JSON
"""
url = "https://api.github.com/repos/channelcat/sanic" url = "https://api.github.com/repos/channelcat/sanic"
async with aiohttp.ClientSession() as session: async with aiohttp.ClientSession() as session:
response = await fetch(session, url) result = await fetch(session, url)
return json(response) return response.json(result)
app.run(host="0.0.0.0", port=8000, workers=2) if __name__ == '__main__':
app.run(host="0.0.0.0", port=8000, workers=2)

View File

@ -0,0 +1,17 @@
from sanic import Sanic
from sanic import response
app = Sanic(__name__)
@app.route('/')
def handle_request(request):
return response.redirect('/redirect')
@app.route('/redirect')
async def test(request):
return response.json({"Redirected": True})
if __name__ == '__main__':
app.run(host="0.0.0.0", port=8000)

View File

@ -1,5 +1,5 @@
from sanic import Sanic from sanic import Sanic
from sanic.response import json from sanic import response
from multiprocessing import Event from multiprocessing import Event
from signal import signal, SIGINT from signal import signal, SIGINT
import asyncio import asyncio
@ -9,10 +9,10 @@ app = Sanic(__name__)
@app.route("/") @app.route("/")
async def test(request): async def test(request):
return json({"answer": "42"}) return response.json({"answer": "42"})
asyncio.set_event_loop(uvloop.new_event_loop()) asyncio.set_event_loop(uvloop.new_event_loop())
server = app.create_server(host="0.0.0.0", port=8001) server = app.create_server(host="0.0.0.0", port=8000)
loop = asyncio.get_event_loop() loop = asyncio.get_event_loop()
task = asyncio.ensure_future(server) task = asyncio.ensure_future(server)
signal(SIGINT, lambda s, f: loop.stop()) signal(SIGINT, lambda s, f: loop.stop())