全部主题 | Blog | 时讯 | @fullstackpython | Facebook | 源码
API 集成
大部分生产环境中的 Python Web 应用都依赖一些外部托管的应用程序编程接口 (API)。API 也通常被称作第三方服务或外部平台。 这样的例子包括提供信息和语音服务的 Twilio,提供支付处理的 Stripe 和提供嵌入网页的评论功能的 Disqus。
关于如何合理设计 API 的文章相对较多,然而有关 API 集成最佳实践的文章却很少。但是,因 API 为许多实现领域提供了关键功能,该主题的重要性正在持续提高。
托管的 API 测试服务
API 集成相关资源
相比 API 的辅助库,一些开发人员更喜欢使用 Requests。如果那样,不妨看下 关于如何使用 requests 访问 Web APIs 的教程 这篇文章。
Product Hunt 列出了大量常用的 收费和免费 Web APIs,说明了 “API 无处不在”。
18F API-All-the-X 列表 收集了所有政府发布的 Web API。当有新的 API 上线时,这份列表也会作相应的更新。
如果你使用 Requests,不妨看下这篇简洁实用的指南,如何使用 Python 对 HTTP 错误进行优雅地处理。
John Sheehan 的 "API 维护之禅与艺术" 这个幻灯片是有关 API 集成的。
Randall Degges 的 "API 驱动的开发" 这篇文章讲解了 API 的使用如何能减少你需要编写的代码量及维护量,从而使你能更快地完成应用开发。
确保第三方 API 使用时的安全性 这篇文章非常有趣,它高度总结了当你的应用需要使用第三方服务时,你应该如何做才能确保安全性。
在 Requests 中进行重试操作 是篇不错的教程,讲述了如何使用 Requests 这个库来轻松地对失败的 HTTP 请求进行重新尝试。
我在 DjangoCon 2013 上专门讲述了 "如何使 Django 能与第三方服务更好集成。"
如果你想找一个使用了两种 Web API 的 Django 应用项目示例,不妨参照这个教程,使用 Django、MMS 和 PokéAPI 来创作你自己的 Pokédex。
vcr.py 是捕获并重新执行带模拟数据的 HTTP 请求的一种方法。它对于 API 集成非常有用。
缓存外部 API 请求 是一篇很好的文章,讲述了当使用 Requests 库访问外部 Web API 时,如何才能最大限度地减少 HTTP 调用所需的次数。
API 集成学习清单
挑选一个具有一流文档的 API。这里有一份 非常适合初学者的十种 API。
查阅你所选 API 的相关文档。找到通过使用 API 能对你的应用有所改善的地方。
在开始写代码前,先使用命令行中的 cURL 或者浏览器中的 Postman 对该 API 进行练习。通过练习有助于你更好地掌握 API 认证以及请求与返回所需数据的相关知识。
评估是要用一个辅助库,还是用 Requests。辅助库通常更易使用,而 Requests 可使你对 HTTP 调用施加更多控制。
将 API 调用移到 任务队列,从而使其不会阻塞 Web 应用的 请求-应答 流程。
将 Web API 集成到项目中后,接下来要做什么?
想找到一个完整的,一步一步的部署方案吗?请看《The Full Stack Python Guide to Deployments》.
邮件获取更新
目录
1. 简介学习编程为什么用 Python?Python 2 还是 3?企业 PythonPython CommunityBest Python Podcasts最佳 Python 资源最佳 Python 视频2. 开发环境VimEmacs3. 核心语言生成器推导式4. Web 开发Web 框架DjangoFlaskBottlePyramidMorepath其它 Web 框架Web 设计级联样式表 (CSS)JavaScriptWebSockets模板引擎Web 应用安全静态网站生成器Jinja25. 数据关系型数据库NoSQL 数据存储对象关系映射器PostgreSQLMySQLSQLite6. Web APIsAPI 集成API 的创建Twilio7. 部署服务器平台即服务(PaaS)操作系统Web 服务器WSGI 服务器源码控制应用程序依赖静态内容任务队列配置管理持续集成日志监控Web 分析Docker缓存微服务DevOpsNginxApache HTTP 服务器CaddyGreen Unicorn (Gunicorn)UbuntuPelicanLektorMkDocs8. 测试单元测试集成测试代码度量调试9. MetaBotsChange LogFuture DirectionsAbout the AuthorSQLAlchemyPeewee …或者显示全部目录内容.
API 集成
重要的更新内容会通过 Twitter 账号@fullstackpython发布。
需要更加详细的教程吗?请看 《The Full Stack Python Guide to Deployments》。
Chapters
1. 简介2. 开发环境3. 核心语言4. Web 开发5. 数据6. Web APIs » API 集成 7. 部署8. 测试9. Meta …or view the full table of contents.
This site is based on Matt Makai's project Full Stack Python, thanks for his excellent work!
此网站由 @haiiiiiyun 和 开源爱好者们 共同维护。 若发现错误或想贡献,请访问: Github fullstackpython.cn 项目