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.1.0.tar.gz (3.4 kB view details)

Uploaded Source

Built Distribution

flaspi-0.1.0-py3-none-any.whl (4.0 kB view details)

Uploaded Python 3

File details

Details for the file flaspi-0.1.0.tar.gz.

File metadata

  • Download URL: flaspi-0.1.0.tar.gz
  • Upload date:
  • Size: 3.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.3

File hashes

Hashes for flaspi-0.1.0.tar.gz
Algorithm Hash digest
SHA256 78593007317c77044bfdf9ddb09e4850ae2fc1645c0a37031f984c2a807be40e
MD5 b97b009e76e10d8b4cccba909ce3124f
BLAKE2b-256 c0d3cbb6b59b2690313376ae485d1310e88ad8edb4374d6e5bc1f436b68da09f

See more details on using hashes here.

File details

Details for the file flaspi-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: flaspi-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 4.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.3

File hashes

Hashes for flaspi-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2074081663e5408337d0052de80ae2fdcef9e82887fdd6b007128b258f5be3b9
MD5 c5d3e56eed9382309c4f0bbf2f87e99d
BLAKE2b-256 c1031ecd0f6ff625e0c5829770dee2ba14344cdc7209d11b4a3b8266ab00c59f

See more details on using hashes here.

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