我正在使用RESTAS,Hunchentoot和CL-JSON开发一个Lisp API。我有一个像这样定义的路线:
(define-route user/register ("/user/register" :method :post)
(let* ((raw-data (hunchentoot:raw-post-data :force-text t))
(params (json:decode-json-from-string)))
(format t "List of parameters: ~a~%" params)
))
现在我正在使用Postman在请求正文中发送带有一些示例JSON数据的HTTP POST请求,如下所示:
{
"first_name": "John",
"last_name": "Doe",
"login": "jdoe",
"password": "lalala",
"email": "jdoe@ietf.org",
"organization": "IETF"
}
请求正文明显通过,因为我能够将其输出到屏幕,但decode-json
部分让我遇到500服务器错误。我尝试了一些似乎合理的组合,但我无法解析那个JSON。理想情况下,我想将其解析为plist
,alist
或哈希表。非常感谢任何帮助。
答案 0 :(得分:1)
使用(restas:debug-mode-on)进行调试。