- Cloud Native Python
- Manish Sethi
- 328字
- 2021-07-02 19:11:59
PUT /api/v1/users
The PUT API basically helps us update a user's record specified by user_id.
Go ahead and create a route with the PUT method to update the user records defined in the app.py file, as follows:
@app.route('/api/v1/users/<int:user_id>', methods=['PUT']) def update_user(user_id): user = {} if not request.json: abort(400) user['id']=user_id key_list = request.json.keys() for i in key_list: user[i] = request.json[i] print (user) return jsonify({'status': upd_user(user)}), 200
Let's specify the definition of the upd_user(user) function, which basically updates the information in the database with the check that the user id exists:
def upd_user(user): conn = sqlite3.connect('mydb.db') print ("Opened database successfully"); cursor=conn.cursor() cursor.execute("SELECT * from users where id=? ",(user['id'],)) data = cursor.fetchall() print (data) if len(data) == 0: abort(404) else: key_list=user.keys() for i in key_list: if i != "id": print (user, i) # cursor.execute("UPDATE users set {0}=? where id=? ",
(i, user[i], user['id'])) cursor.execute("""UPDATE users SET {0} = ? WHERE id =
?""".format(i), (user[i], user['id'])) conn.commit() return "Success"
Now that we have added the API handle for the PUT method for the user resource, let's test it out as follows:

We have defined our resources that are a part of version v1. Now, let's define our next version release, v2, which will add a tweet resource to our microservices. Users who are defined in users resources are allowed to perform actions on their tweets. Now, /api/info will be shown, as follows:

Our tweets resource will use the HTTP methods as follows:

We can define a tweet as having the following fields:
- id: This is the unique identifier for each tweet (Numeric type)
- username: This should exist as a user in the users resources (String type)
- body: This is the content of the tweet (String type)
- Tweet_time: (Specify type)
You can define the preceding tweets resource schema in SQLite 3 as follows:
CREATE TABLE tweets( id integer primary key autoincrement, username varchar2(30), body varchar2(30), tweet_time date);
Great! The tweets resource schema is ready; let's create our GET methods for the tweets resource.
- Building a Game with Unity and Blender
- Visual FoxPro程序設計教程
- 新手學Visual C# 2008程序設計
- STM32F0實戰:基于HAL庫開發
- Amazon S3 Cookbook
- Python忍者秘籍
- C/C++程序員面試指南
- HTML+CSS+JavaScript編程入門指南(全2冊)
- ABAQUS6.14中文版有限元分析與實例詳解
- 交互設計師成長手冊:從零開始學交互
- Java核心技術速學版(第3版)
- Implementing Splunk(Second Edition)
- Mastering Responsive Web Design
- Java Web開發任務教程
- 軟件自動化測試實戰解析:基于Python3編程語言