返回介绍

7.5 客户端应用

发布于 2024-02-05 23:12:36 字数 1203 浏览 0 评论 0 收藏 0

由于gRPC是基于HTTP/2的,将来可能会直接从浏览器调用基于gRPC的服务,但除非主流的浏览器支持所需的HTTP/2特性,且谷歌发布浏览器端的JavaScript gRPC客户端程序,从webapp访问推断服务都应当通过服务器端的组件进行。

接下来将基于BaseHTTPServer搭建一个简单的Python Web服务器,BaseHTTPServer将处理上载的图像文件,并将其发送给推断服务进行处理,再将推断结果以纯文本形式返回。

为了将图像发送到推断服务器进行分类,服务器将以一个简单的表单对GET请求做出响应。所使用的代码如下:

为了从Web App服务器调用推断功能,需要ClassificationService相应的Python protocol buffer客户端。为了生成它,需要运行Python的protocol buffer编译器:

它将生成包含了用于调用服务的stub的classification_service_pb2.py文件。

服务器接收到POST请求后,将对发送的表单进行解析,并用它创建一个Classification-Request对象。然后为这个分类服务器设置一个channel,并将请求提交给它。最后,它会将分类响应渲染为HTML,并送回给用户。

为了运行该服务器,可从该容器外部使用命令python client.py。然后,用浏览器导航到http://localhost:8080来访问其UI。请上传一幅图像并查看推断结果如何。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文