Return JSON response from Python function

Viewed 190
def addData():
    res = []
    class InfoData:
        def __init__(x, ID, number):
            x.ID = ID
            x.number = number

    for i in range(0, 10):
        res.append(InfoData("A",i))
        
    return json.dumps(res)
    #I got "Object of type InfoData is not JSON serializable"

I make an API using Flask Python and having a basic function above.

How can I return JSON response from this function ?

2 Answers

Do it this way.

def addData():
    res = []
    class InfoData:
        def __init__(x, ID, number):
            x.ID = ID
            x.number = number

    for i in range(0, 10):
        res.append(InfoData("A",i).__dict__)
        
    return json.dumps(res)

Pass json-representation of InfoData class instances. F.e. {'id': ..., 'number': ...}.

Related