3

私はRESTAPIを持っています、例えば:

http://localhost/api/v1/foo1
http://localhost/api/v1/foo2
http://localhost/api/v1/foo3

次のようなPythonクライアントが欲しいのですが

api({some kinda init code})

result1 = api.get_foo1(params)
result2 = api.post_foo2(params)
result2 = api.post_foo2(params)

私は本当に怠け者で、そのようなAPIを生成する既存のPythonパッケージがあるかどうか疑問に思っていました。

私はすでにSOでいくつかの検索を行っています。これまでに見つけた最善のアプローチは、python-requestsパッケージを使用し、それをきれいにするために独自のラッパーを作成することです。もっと簡単なものはありますか?

4

1 に答える 1

2

Google Codeでpython-rest-clientを使用してみてください。ここでは、次のような呼び出しを行います。

conn.request_get("/search", args={'q':'Test'}, headers={'Accept':'text/json'})

ただし、すぐにわかるように、サンプル呼び出しを単純にするために、何らかのラッパーを作成する必要があります。

RESTを使用すると、サービス呼び出しが何を返すかを事前に把握していないため、REST用の万能APIを使用できないことに注意してください。最終的には、http呼び出しをニーズに便利なものにラップする必要があります。

これを自分で行うことをお勧めします。これは、クライアントとAPI自体の間に抽象化レイヤーを導入しないため、メンテナンスに役立ちます。

于 2012-07-14T17:46:51.657 に答える