Skip to main content

easy api maker for flask

Project description

flaspi (easy api maker for flask)

下の方に日本語の説明があります

Overview

  • A tool to create flask APIs easily.
  • API for sending and receiving JSON
    • Note that it is not a strict RESTful API.

Usage example

  • Server side
import flask
import flaspi

# Define a flask app (web server)
app = flask.Flask(__name__)

# function describing the API behavior
def greeting_func(req_obj):
	return {"message": "Hello, %s!!"%req_obj["name"]}

# Define the API for post (params: the URL path, the function that defines the API action, and the flask app)
flaspi.post_api("/greeting", greeting_func, app = app)

# run flask server
app.run(host = "0.0.0.0", port = "80", debug = False)
  • Example API call
curl http://localhost:80/greeting -X POST -H "Content-Type: application/json" --data '{"name": "Hoge"}'
  • Result (response)
{"message": "Hello, Hoge!"}
  • Example of API call (using flaspi)
res = flaspi.call_post_api("http://localhost:80/greeting", {"name": "Hoge"})	# -> (200, {'message': 'Hello, Hoge!!'})

概要

  • flaskのAPIを簡単に作れるツール
  • JSONを送受信する形のAPI
    • 厳密なRESTful-APIではないので注意

使用例

  • サーバー側
import flask
import flaspi

# flaskのアプリ(ウェブサーバー)を定義
app = flask.Flask(__name__)

# APIの動作を記述した関数
def greeting_func(req_obj):
	return {"message": "Hello, %s!!"%req_obj["name"]}

# postのAPIを定義 (URLのパス、動作を定義した関数、flaskのappを渡す)
flaspi.post_api("/greeting", greeting_func, app = app)

# flaskサーバー立ち上げ
app.run(host = "0.0.0.0", port = "80", debug = False)
  • APIの呼び出し例
curl http://localhost:80/greeting -X POST -H "Content-Type: application/json" --data '{"name": "Hoge"}'
  • 結果 (レスポンス)
{"message": "Hello, Hoge!!"}
  • APIの呼び出し例 (flaspiを利用した場合)
res = flaspi.call_post_api("http://localhost:80/greeting", {"name": "Hoge"})	# -> (200, {'message': 'Hello, Hoge!!'})

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

flaspi-0.0.4.tar.gz (3.4 kB view hashes)

Uploaded Source

Built Distribution

flaspi-0.0.4-py3-none-any.whl (3.9 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page