4

背景:

我有一个使用 Jersey 用 Ja​​va 实现的 REST API。我的 API 使用四个动词:GET、POST、PUT、DELETE。我发现在 Java 中开发 REST API 非常简单直接。

例如,这里是一个精心设计的helloweb 服务(我之所以这么说是因为有更简单的方法,但这更具代表性):

import javax.ws.rs.*;

@Path("/myresource")
public class MyResource{

   @GET
   @Path("name/{name}")
   @Produces({MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML})
   public Response sayHello(@PathParam("name") String name){
       return Response.ok("Hello "+name).build();
   }
}

问题:

我正在学习python。我想将我的 Java Jersey REST API 转换为 python。

基本上,Jersey 是 Java 的 REST 实现(又名 JAX-RS:用于 RESTful Web 服务的 Java API)。python有REST的参考实现吗?如果没有,是否有任何实现接近并且易于来自 Java-Jersey 的人使用?

4

1 回答 1

4

您可能想查看之前的类似问题:Python REST(Web 服务)框架的建议?

Python 没有内置的 REST 框架,但我个人对FlaskBottle有很好的体验。

它的使用与泽西岛非常相似(瓶子示例):

@route('/')
@route('/hello/<name>')
def greet(name='Stranger'):
    return template('Hello {{name}}, how are you?', name=name)

处理 HTTP 动词:

@app.route('/login', methods=['GET', 'POST'])
def login():
    if request.method == 'POST':
        do_the_login()
    else:
        show_the_login_form()
于 2012-11-20T23:20:42.310 回答