http到thrift协议转换
takumi-http的Python项目详细描述
将http服务编写为精简服务。
这个包实现了一个从http到thrift的协议转换器。就写吧 该服务作为正常的takumi thrift服务,然后作为http服务 服务。开发人员不必关心协议的细节 转换,只将配置thrift_protocol_class添加到app.yaml和 您的服务可以作为http服务。
配置
thrift_protocol_class:takumi_http.HttpProtocol
设置
会话相关设置:
- SECRET_KEY(必需)用于加密cookie的密钥。
- PERMANENT_SESSION_LIFETIMEtimedelta会话生存期,默认为31天。
- SESSION_COOKIE_DOMAINcookie域。
- SESSION_COOKIE_PATHcookie路径,默认为“/”。
属性session_cookie_domain和session_cookie_path可以是 设置为API上下文以覆盖默认设置。
示例
fromtakumiimportTakumiapp=Takumi('PingService')app.use(save_session)@app.api_with_ctx@pass_requestdefsay_hello(request,name):request.session['user_id']=90return'Hello '+name
调用API
http方法不是很重要。如果api有参数,请使用POST, 如果不使用GET。
使用http客户端调用api:
$ curl -XPOST http://localhost:1993/say_hello -d '{"name":"world"}'
API URL的格式如下:
http://<domain>:<port>/<arbitrary>/<api_name>