handle_req_data: sort data with keys if request data is json type

This commit is contained in:
debugtalk
2017-06-24 11:19:20 +08:00
parent d5e02d3319
commit db68c394e8
5 changed files with 24 additions and 6 deletions

View File

@@ -36,7 +36,7 @@ def validate_request(func):
req_headers = request.headers
req_authorization = req_headers['Authorization']
random_str = req_headers['Random']
data = request.data.decode("utf-8")
data = utils.handle_req_data(request.data)
authorization = utils.gen_md5([TOKEN, data, random_str])
assert authorization == req_authorization
return func(*args, **kwds)

View File

@@ -27,6 +27,7 @@ class ApiServerUnittest(unittest.TestCase):
def prepare_headers(self, data=""):
token = api_server.TOKEN
data = utils.handle_req_data(data)
random_str = utils.gen_random_string(5)
authorization = utils.gen_md5([token, data, random_str])

View File

@@ -1,4 +1,3 @@
import json
import random
import requests
@@ -37,7 +36,7 @@ class TestApiServerV2(ApiServerUnittest):
'name': name,
'password': password
}
headers = self.prepare_headers(json.dumps(data))
headers = self.prepare_headers(data)
return self.api_client.post(url, headers=headers, json=data)
def get_user(self, uid):
@@ -50,7 +49,7 @@ class TestApiServerV2(ApiServerUnittest):
'name': name,
'password': password
}
headers = self.prepare_headers(json.dumps(data))
headers = self.prepare_headers(data)
return self.api_client.put(url, headers=headers, json=data)
def delete_user(self, uid):
@@ -129,7 +128,7 @@ class TestApiServerV2(ApiServerUnittest):
}
resp = self.api_client.post(
url,
headers=self.prepare_headers(json.dumps(expected_response)),
headers=self.prepare_headers(expected_response),
json=expected_response
)
self.assertEqual(status_code, resp.status_code)
@@ -144,7 +143,7 @@ class TestApiServerV2(ApiServerUnittest):
url = "%s/customize-response" % self.host
resp = self.api_client.post(
url,
headers=self.prepare_headers(json.dumps(expected_response)),
headers=self.prepare_headers(expected_response),
json=expected_response
)
self.assertIn('abc', resp.headers)