Python Forum
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
rest api parameter in flask
#1
Hi

How can I specify a parameter to task 1.

I have a task list, which is triggered by an integer (1 or 2). But in addition to the integer, I would like to pass in additional parameters, not necessarily number types.

This is what I currently have:

#!/usr/bin/python3
from flask import Flask, jsonify, json
import cx_Oracle

con = cx_Oracle.connect('ordb/ordb@//10.11.12.18:1521/FTNODE')

app = Flask(__name__)

tasks = [
    {
        'id': 1,
        'title': 'Customer list',
        'description': 'List of customers currently in the database', 
        'done': False
    },
    {
        'id': 2,
        'title': 'Warehouse List',
        'description': 'List of warehouses currently in the database', 
        'done': False
    }
]

@app.route('/warehouse/api/v1.0/api', methods=['GET'])
def get_tasks():
    return jsonify({'tasks': tasks})

@app.route('/warehouse/api/v1.0/api/<int:task_id>', methods=['GET'])
def get_task(task_id):
    task = [task for task in tasks if task['id'] == task_id]
    if len(task) == 0:
      abort(404)

    print(task_id)
    if task_id==1:
      c = con.cursor()
      query = 'select * from customer'
      result = list(c.execute(query))
      c.close()
      jsonData = json.dumps(result)

    print(task_id)
    if task_id==2:
      c = con.cursor()
      query = 'select * from warehouse'
      result = list(c.execute(query))
      c.close()
      jsonData = json.dumps(result)

    return jsonify({'task': jsonData})

if __name__ == '__main__':
    app.run(port=5001,debug=False)  
    con.close()
Sample output:

$ curl -i http://127.0.0.1:5001/warehouse/api/v1.0/api/1
HTTP/1.0 200 OK
Content-Type: application/json
Content-Length: 332
Server: Werkzeug/0.14.1 Python/3.6.5
Date: Thu, 21 Jun 2018 13:41:30 GMT

{"task":"[[41, \"Aaron\", \"A.\", \"Aaronson\"], [42, \"Diana\", null, \"Birch\"], [43, \"David\", \"C.\", \"Pack\"], [44, \"Hakim\", null, \"Dogan\"], [45, \"Anita\", null, \"Eaton\"], [46, \"Jasmin\", null, \"Faraday\"], [47, \"Gene\", \"B.\", \"McClene\"], [48, \"Todd\", null, \"Howard\"], [49, \"Irma\", null, \"Howitzer\"]]"}
Reply


Messages In This Thread
rest api parameter in flask - by bluefrog - Jun-21-2018, 01:59 PM
RE: rest api parameter in flask - by wavic - Jun-21-2018, 02:03 PM
RE: rest api parameter in flask - by bluefrog - Jun-21-2018, 03:57 PM
RE: rest api parameter in flask - by snippsat - Jun-21-2018, 05:03 PM

Possibly Related Threads…
Thread Author Replies Views Last Post
  [ERROR] ParamValidationError: Parameter validation failed: Invalid type for parameter gdbengo 3 11,630 Dec-26-2022, 08:48 AM
Last Post: ibreeden
  API REST Package for Calling/Flask muzikman 12 4,504 Oct-22-2021, 07:51 PM
Last Post: muzikman
  Help with return on REST API Flask korenron 0 1,353 Jun-13-2021, 10:40 AM
Last Post: korenron

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020