在 sails 中以 json 格式给出参数
Give parameter with json format in sails
在我的控制器和其他有请求对象的区域,我可以使用 req.params('username')
访问请求参数。这对于正常 POSTed 数据很好,但我希望我的 API 接受请求正文中的 JSON 对象并将其转换为我仍然可以使用 [=14= 访问的参数].
例如,如果我将此作为 POST 请求正文发送到我的控制器操作:
{'username': 'Chris', 'password': 'mypass'}
我希望能够使用 req.params('username')
和 req.param('password')
获取用户名和密码。
目前唯一可行的方法是像这样发送数据:
username=Chris&password=mypass
有什么想法吗?
发送json对象时,可以在req.body
中访问POST
请求数据
你必须设置请求 header : Content-Type 到 application/json
有一件事我想澄清一下,
req.params用于获取url参数
e,g, /user/:name
req.params("name")
而req.param更强大,你可以通过此方法获取三个数据,具有以下优先级
- Url 参数
e,g, /user/:name
req.param("name") //url parameters
- Body 查询字符串或 body 数据
POST HEADER(可选,默认)
Content-Type:application/json
POST BODY - json 数据
{'username': 'Chris', 'password': 'mypass'}
或
POST HEADER
Content-Type:application/x-www-form-urlencoded
POST BODY - 查询字符串
username=Chris&password=mypass
您可以使用req.param('password')
获取您发送的值。
- 查询字符串
e,g, /user?nickname=ryan
req.param("nickname") //ryan
在我的控制器和其他有请求对象的区域,我可以使用 req.params('username')
访问请求参数。这对于正常 POSTed 数据很好,但我希望我的 API 接受请求正文中的 JSON 对象并将其转换为我仍然可以使用 [=14= 访问的参数].
例如,如果我将此作为 POST 请求正文发送到我的控制器操作:
{'username': 'Chris', 'password': 'mypass'}
我希望能够使用 req.params('username')
和 req.param('password')
获取用户名和密码。
目前唯一可行的方法是像这样发送数据:
username=Chris&password=mypass
有什么想法吗?
发送json对象时,可以在req.body
POST
请求数据
你必须设置请求 header : Content-Type 到 application/json
有一件事我想澄清一下,
req.params用于获取url参数
e,g, /user/:name
req.params("name")
而req.param更强大,你可以通过此方法获取三个数据,具有以下优先级
- Url 参数
e,g, /user/:name
req.param("name") //url parameters
- Body 查询字符串或 body 数据
POST HEADER(可选,默认)
Content-Type:application/json
POST BODY - json 数据
{'username': 'Chris', 'password': 'mypass'}
或
POST HEADER
Content-Type:application/x-www-form-urlencoded
POST BODY - 查询字符串
username=Chris&password=mypass
您可以使用req.param('password')
获取您发送的值。
- 查询字符串
e,g, /user?nickname=ryan
req.param("nickname") //ryan