熟悉的http框架。

responder的Python项目详细描述


responder:一个熟悉的python http服务框架

Build StatusDocumentation Statusimageimageimageimage

Starlette提供动力。该async声明是可选的。View documentation

这将为您提供一个asgi应用程序,其中预安装了一个生产静态文件服务器、jinja2模板(无需额外的导入)和一个基于uvloop的生产web服务器,自动使用gzip压缩服务请求。

推荐信

"Pleasantly very taken with python-responder. @kennethreitz at his absolute best." —Rudraksh M.K.

"ASGI is going to enable all sorts of new high-performance web services. It's awesome to see Responder starting to take advantage of that." — Tom Christie author of Django REST Framework

"I love that you are exploring new patterns. Go go go!" — Danny Greenfield, author of Two Scoops of Django

更多示例

有关响应程序中可用功能的详细信息,请参见the documentation's feature tour

安装响应程序

安装稳定释放装置:

$ pipenv install responder
✨?✨

或者,从开发分支安装:

$ pipenv install -e git+https://github.com/taoufik07/responder.git#egg=responder

只支持python 3.6+

基本思想

这里的主要概念是把烧瓶和猎鹰身上的细微之处结合起来,并把它们统一到一个框架中,还有我的一些新想法。我还想将一些api原语植入请求库,并将它们放入web框架中。所以,你会发现这里的请求有很多相似之处。

  • 设置resp.content将返回字节。
  • 设置resp.text返回unicode,而设置resp.html返回html。
  • 设置resp.media将返回json/yaml(.text/.html/.content覆盖此设置)。
  • 不区分大小写req.headersdict(直接来自请求)。
  • resp.status_codereq.methodreq.url和其他熟悉的朋友。

想法

  • Flask风格的路由表达式,具有新的功能——所有这些都是使用Python3.6+的新F-string语法。
  • 我喜欢Falcon的“每一个请求和响应都被传递到每个视图并进行了修改”的方法,特别是response.media,并在这里使用过。除了支持json之外,我还决定支持yaml,因为kubernetes正在慢慢接管世界,而且它将yaml用于所有事情。内容谈判等等。
  • 一个内置的测试客户端,它使用您知道并喜爱的实际请求
  • 能够轻松安装其他wsgi应用程序。
  • 自动gzip响应。
  • 除了falcon的on_geton_post等方法之外,responder还提供了一个on_request方法,它可以对每种类型的请求调用,非常类似于请求。
  • 内置生产静态文件服务器。
  • Uvicorn内置作为生产Web服务器。我本来会选择Gunicorn,但它不会在Windows上运行。另外,uvicorn可以很好地防止slowloris攻击,使nginx在生产中不必要。
  • GraphQL支持,通过Graphene。这里的目标是让任何graphql查询都可以神奇地在任何路径上公开。
  • 提供运行webpack的官方方式。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java JNLP无法在浏览器中正确启动(与dtjava.js一起部署)   在执行下一个方法之前,java将等待线程执行结束   java如何将另一个LayoutManager应用于JComboBox?(多栏JComboBox尝试)   使用jPBC在java中实现双线性配对   java在使用@RequestMapping注释时获取请求的值(URL)   java如何控制流量   java如何获取IFC对象的绝对坐标?   java目标服务器无法使用htmlunit和tor响应异常   java需要帮助创建一个循环结构来运行我的程序   java有可能拥有一个Android APK并在应用程序中更改构建变体吗?   在Sphinx4中运行Ant的java   Java:从ArrayList获取子列表的有效方法   java如何使在循环内部创建的数组在循环外部工作?   apache poi通过java中的XSSF表从单元格读取日期值   安卓 java自己的SeqLock实现,避免spinlock会更好吗?   java的并发底层方法。util。同时发生的预定未来   java比较方法违反了它的一般约定,如何使它具有可传递性?   使用JAVA定向指定类的DB导出子类   一个方法中的java更改特定imageView