0
class GetAdminAsJsonHandler(BaseHandler):
def post(self):
admin_guid = self.get_argument("admin_guid")
if admin_guid == None:
self.write("AdminGuid is missing.")
else:
database = self.connect_db()
cursor = database.cursor()
admins = cursor.execute("SELECT * FROM Admin").fetchall()
self.disconnect_db()
self.write(json_encode(admins)) # Error
안녕을 JSON으로. Pyodbc를 사용하고 테이블 열이 AdminGuid, ID 및 Name이라고 가정하고 # 오류 부분을 수정하여 어떻게 작동하게해야합니까?파이썬, Pyodbc - 인코딩 행은 내가 웹에서 AJAX 요청이있을 때 데이터베이스 관리자의 JSON 인코딩 목록을 반환하는 핸들러를 개발해야한다,
감사합니다.
* 오류 메시지
[E 141021 02:22:47 web:1407] Uncaught exception POST /admin/get (::1)
HTTPServerRequest(protocol='http', host='localhost:8000', method='POST', uri='/admin/get', version='HTTP/1.1', remote_ip='::1', headers={'Origin': 'http://localhost:8000', 'Content-Length': '12', 'Accept-Language': 'ko-KR,ko;q=0.8,en-US;q=0.6,en;q=0.4', 'Accept-Encoding': 'gzip,deflate', 'Host': 'localhost:8000', 'Accept': '*/*', 'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/38.0.2125.104 Safari/537.36', 'Connection': 'keep-alive', 'X-Requested-With': 'XMLHttpRequest', 'Referer': 'http://localhost:8000/admin', 'Cookie': 'csrftoken=NUV1oVLBJ3jzzvuNio9Dv22k8qTt5TYW; install_421aa90e079fa326b6494f812ad13e79=bqgjn14u6t5sn3th0ccdnj6pr7', 'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8'})
Traceback (most recent call last):
File "C:\Python27\lib\site-packages\tornado\web.py", line 1332, in _execute
result = method(*self.path_args, **self.path_kwargs)
File "C:\Users\SANG MIN\Desktop\haundae\module\admin\handlers.py", line 34, in post
admin_array = [a for r in admin] = {}
File "C:\Python27\lib\site-packages\tornado\escape.py", line 88, in json_encode
return json.dumps(value).replace("</", "<\\/")
File "C:\Python27\lib\json\__init__.py", line 243, in dumps
return _default_encoder.encode(obj)
File "C:\Python27\lib\json\encoder.py", line 207, in encode
chunks = self.iterencode(o, _one_shot=True)
File "C:\Python27\lib\json\encoder.py", line 270, in iterencode
return _iterencode(o, 0)
File "C:\Python27\lib\json\encoder.py", line 184, in default
raise TypeError(repr(o) + " is not JSON serializable")
TypeError: ('admin', 'admin', '\xc3\xd6\xb0\xed\xbf\xee\xbf\xb5\xc1\xf8', True, True, 1) is not JSON serializable
[E 141021 02:22:47 web:1811] 500 POST /admin/get (::1) 1233.00ms
무엇이 오류 메시지입니까? 전체 추적 메시지를 보여주세요. –
오류 메시지가 추가되었습니다. TypeError : ('admin', 'admin', '\ xc3 \ xd6 \ xb0 \ xed \ xbf \ xee \ xbf \ xb5 \ xc1 \ xf8', True, True, 1)은 JSON을 직렬화 할 수 없습니다. JSON으로 변환 할 수있는 적절한 형식이 아닌 것 같습니다. – Raccoon