Skip to content

Commit fb80b69

Browse files
author
defnngj
committed
更新接口封装方法
1 parent d6033a8 commit fb80b69

File tree

2 files changed

+54
-56
lines changed

2 files changed

+54
-56
lines changed

api/common.py

+6-8
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,22 @@
11
from django.http import JsonResponse
22

33

4-
def ApiResponse(status=None, message=None, data=[]):
4+
def response(status=None, message=None, data=[]):
55
"""
66
实现Api的固定格式的返回
7-
:param status:
8-
:param message:
9-
:param data:
7+
:param status: 状态码
8+
:param message: 提示信息
9+
:param data: 数据
1010
:return:
1111
"""
1212
if status is None:
13-
status__ = 10000
14-
else:
15-
status__ = 10000 + int(status)
13+
status = 10200
1614

1715
if message is None:
1816
message = "successful"
1917

2018
response_dict = {
21-
"status": status__,
19+
"status": status,
2220
"message": message,
2321
"data": data
2422
}

api/views.py

+48-48
Original file line numberDiff line numberDiff line change
@@ -6,22 +6,22 @@
66
from django.contrib.auth.decorators import login_required
77
from guest2.settings import BASE_DIR
88
from api.models import User
9-
from api.common import ApiResponse
9+
from api.common import response
1010

1111

1212
def hello_world(request):
1313
"""
1414
最简单的get请求,返回json格式返回
1515
"""
16-
return ApiResponse(200, "Welcome to API testing")
16+
return response(10200, "Welcome to API testing")
1717

1818

1919
def user(request, username):
2020
"""
2121
通过 URI 传参
2222
"""
2323
msg = "hello, {}".format(username)
24-
return ApiResponse(200, msg)
24+
return response(10200, msg)
2525

2626

2727
def get_user_info(request, uid):
@@ -31,11 +31,11 @@ def get_user_info(request, uid):
3131
if request.method == "GET":
3232
user_info = {"id": 1, "name": "tom", "age": 22}
3333
if uid != 1:
34-
return ApiResponse(101, "user id null")
34+
return response(10101, "user id null")
3535
else:
36-
return ApiResponse(200, data=user_info)
36+
return response(10200, data=user_info)
3737
else:
38-
return ApiResponse(101, "request method error")
38+
return response(10101, "request method error")
3939

4040

4141
def search(request):
@@ -48,9 +48,9 @@ def search(request):
4848
data_list = ["selenium教程", "seleniumhq.org", "selenium环境安装"]
4949
else:
5050
data_list = []
51-
return ApiResponse(200, data=data_list)
51+
return response(10200, data=data_list)
5252
else:
53-
return ApiResponse(101, "request method error")
53+
return response(10101, "request method error")
5454

5555

5656
def post_login(request):
@@ -63,18 +63,18 @@ def post_login(request):
6363
password = request.POST('password')
6464

6565
if username is None or password is None:
66-
return ApiResponse(102, "username or passwrord is None")
66+
return response(10102, "username or passwrord is None")
6767

6868
elif username == "" or password == "":
69-
return ApiResponse(103, "username or passwrord is null")
69+
return response(10103, "username or passwrord is null")
7070

7171
elif username == "admin" and password == "a123456":
72-
return ApiResponse(200, "login success")
72+
return response(10200, "login success")
7373

7474
else:
75-
return ApiResponse(104, "username or password error")
75+
return response(10104, "username or password error")
7676
else:
77-
return ApiResponse(101, "request method error")
77+
return response(10101, "request method error")
7878

7979

8080
def post_add_user(request):
@@ -86,24 +86,24 @@ def post_add_user(request):
8686
try:
8787
data = json.loads(request.body)
8888
except json.decoder.JSONDecodeError:
89-
return ApiResponse(105, "format error")
89+
return response(10105, "format error")
9090

9191
try:
9292
name = data["name"]
9393
age = data["age"]
9494
height = data["height"]
9595
except KeyError:
96-
return ApiResponse(102, "key null")
96+
return response(10102, "key null")
9797
else:
9898
if name == "":
99-
return ApiResponse(103, "name null")
99+
return response(10103, "name null")
100100
elif name == "tom":
101-
return ApiResponse(104, "name exist")
101+
return response(10104, "name exist")
102102
else:
103103
data = {"name": name, "age": age, "height": height}
104-
return ApiResponse(200, "add successful", data)
104+
return response(10200, "add successful", data)
105105
else:
106-
return ApiResponse(101, "request method error")
106+
return response(10101, "request method error")
107107

108108

109109
def post_header(request):
@@ -114,9 +114,9 @@ def post_header(request):
114114
if request.method == 'POST':
115115
token = request.headers.get("token")
116116
ct = request.headers.get("Content-Type")
117-
return ApiResponse(200, "header ok!", {"token": token, "Content-Type": ct})
117+
return response(10200, "header ok!", {"token": token, "Content-Type": ct})
118118
else:
119-
return ApiResponse(101, "request method error")
119+
return response(10101, "request method error")
120120

121121

122122
def user(request, uid):
@@ -135,10 +135,10 @@ def user(request, uid):
135135
try:
136136
user = User.objects.get(id=uid)
137137
except User.DoesNotExist:
138-
return ApiResponse(101, message="用户信息不存在")
138+
return response(10101, message="用户信息不存在")
139139
else:
140140
user_info = model_to_dict(user)
141-
return ApiResponse(200, data=user_info)
141+
return response(10200, data=user_info)
142142

143143
elif request.method == "POST":
144144
post = json.loads(request.body)
@@ -149,9 +149,9 @@ def user(request, uid):
149149
except User.DoesNotExist:
150150
user = User.objects.create(id=uid, name=name, age=age)
151151
user_info = model_to_dict(user)
152-
return ApiResponse(200, "add success", user_info)
152+
return response(10200, "add success", user_info)
153153
else:
154-
return ApiResponse(102, "用户id已存在")
154+
return response(10102, "用户id已存在")
155155

156156
elif request.method == "PUT":
157157
put = json.loads(request.body)
@@ -160,24 +160,24 @@ def user(request, uid):
160160
try:
161161
user = User.objects.get(id=uid)
162162
except User.DoesNotExist:
163-
return ApiResponse(101, "用户信息不存在")
163+
return response(10101, "用户信息不存在")
164164
else:
165165
user.name = name
166166
user.age = age
167167
user.save()
168168
user_info = model_to_dict(user)
169-
return ApiResponse(200, "update success", user_info)
169+
return response(10200, "update success", user_info)
170170

171171
elif request.method == "DELETE":
172172
try:
173173
user = User.objects.get(id=uid)
174174
except User.DoesNotExist:
175-
return ApiResponse(101, "用户信息不存在")
175+
return response(10101, "用户信息不存在")
176176
else:
177177
user.delete()
178-
return ApiResponse(200, "delete success")
178+
return response(10200, "delete success")
179179
else:
180-
return ApiResponse(101, "request method error")
180+
return response(10101, "request method error")
181181

182182

183183
def user_login(request):
@@ -188,18 +188,18 @@ def user_login(request):
188188
login_username = request.POST.get("username")
189189
login_password = request.POST.get("password")
190190
if login_username == '' or login_password == '':
191-
return ApiResponse(102, "username or password null")
191+
return response(10102, "username or password null")
192192
else:
193193
user = auth.authenticate(username=login_username, password=login_password)
194194
if user is not None:
195195
auth.login(request, user)
196196
# 将 session 信息记录到浏览器
197197
request.session['user'] = login_username
198-
return ApiResponse(200, "login success")
198+
return response(10200, "login success")
199199
else:
200-
return ApiResponse(103, "username or password error")
200+
return response(10103, "username or password error")
201201
else:
202-
return ApiResponse(101, "request method error")
202+
return response(10101, "request method error")
203203

204204

205205
@login_required
@@ -209,9 +209,9 @@ def user_login_data(request):
209209
"""
210210
username = request.session.get('user', '') # 读取浏览器 session
211211
if username == "":
212-
return ApiResponse(200, 'hello, stranger')
212+
return response(10200, 'hello, stranger')
213213
else:
214-
return ApiResponse(200, 'hello, {}'.format(username))
214+
return response(10200, 'hello, {}'.format(username))
215215

216216

217217
def get_activity(request):
@@ -221,9 +221,9 @@ def get_activity(request):
221221
"""
222222
if request.method == "GET":
223223
activity_info = {"id": 1, "name": "618抽奖活动"}
224-
return ApiResponse(200, data=activity_info)
224+
return response(10200, data=activity_info)
225225
else:
226-
return ApiResponse(101, "request method error")
226+
return response(10101, "request method error")
227227

228228

229229
def get_user(request):
@@ -232,9 +232,9 @@ def get_user(request):
232232
"""
233233
if request.method == "GET":
234234
user_info = {"id": 1, "name": "张三"}
235-
return ApiResponse(200, data=user_info)
235+
return response(10200, data=user_info)
236236
else:
237-
return ApiResponse(101, "request method error")
237+
return response(10101, "request method error")
238238

239239

240240
def get_lucky_number(request):
@@ -246,22 +246,22 @@ def get_lucky_number(request):
246246
user_id = request.form.get('uid')
247247

248248
if activity_id is None or user_id is None:
249-
return ApiResponse(102, "username or password is None")
249+
return response(10102, "username or password is None")
250250

251251
elif activity_id == "" or user_id == "":
252-
return ApiResponse(10103, "username or password is null")
252+
return response(1010103, "username or password is null")
253253

254254
if int(activity_id) != 1:
255-
return ApiResponse(104, "activity id exist")
255+
return response(10104, "activity id exist")
256256

257257
if int(user_id) != 1:
258-
return ApiResponse(105, "user id not exist")
258+
return response(10105, "user id not exist")
259259

260260
number = randint(10000, 99999)
261-
return ApiResponse(200, "Lucky draw number", number)
261+
return response(10200, "Lucky draw number", number)
262262

263263
else:
264-
return ApiResponse(101, "request method error")
264+
return response(10101, "request method error")
265265

266266

267267
def upload_file(request):
@@ -271,9 +271,9 @@ def upload_file(request):
271271
if request.method == "POST":
272272
my_file = request.FILES.get("file", None)
273273
if not my_file:
274-
return ApiResponse(101, "no files for upload!")
274+
return response(10101, "no files for upload!")
275275
destination = open(os.path.join(BASE_DIR, "api/upload", my_file.name), 'wb+')
276276
for chunk in my_file.chunks():
277277
destination.write(chunk)
278278
destination.close()
279-
return ApiResponse(200, "upload success!")
279+
return response(10200, "upload success!")

0 commit comments

Comments
 (0)