使用 Express-Formidable 时如何访问 req.fields 变量
How to access req.fields variables when using Express-Formidable
我在访问由 Express-Formidable 在 req.fields 内部解析的变量时遇到问题。
如果我执行 req.fields 的 console.log(),我会得到以下结果:
{ 'registration[username]': '1',
'registration[password]': '11' }
但是,我无法具体访问用户名或密码字段。
我尝试了以下方法:
console.log(req.fields.registration.username)
console.log(req.fields.registration[username])
console.log(req.fields.registration['username'])
console.log(req.fields.username)
感谢任何帮助,谢谢!
方括号([
和 ]
)中的键很笨拙,但您仍然可以访问值,因为它们只是 String
的末尾天.
您将无法使用 req.fields.keyName
但您可以使用方括号表示法,即 req.fields[keyName]
.
两种方法:
方法 A - 我们使用已知的密钥名称
// We don't expect this to change
const usernameKey = 'registration[username]'
// Now let's extract the value
const usernameValue = req.fields[usernameKey]
方法 B - 提取密钥并使用它们
const listOfKeys = Object.keys(req.fields)
listOfKeys.forEach(key => {
console.log(req.fields[key])
})
方法 B 很难区分每个值,但至少您可以提取它们。
祝你好运!
我在访问由 Express-Formidable 在 req.fields 内部解析的变量时遇到问题。 如果我执行 req.fields 的 console.log(),我会得到以下结果:
{ 'registration[username]': '1',
'registration[password]': '11' }
但是,我无法具体访问用户名或密码字段。 我尝试了以下方法:
console.log(req.fields.registration.username)
console.log(req.fields.registration[username])
console.log(req.fields.registration['username'])
console.log(req.fields.username)
感谢任何帮助,谢谢!
方括号([
和 ]
)中的键很笨拙,但您仍然可以访问值,因为它们只是 String
的末尾天.
您将无法使用 req.fields.keyName
但您可以使用方括号表示法,即 req.fields[keyName]
.
两种方法:
方法 A - 我们使用已知的密钥名称
// We don't expect this to change
const usernameKey = 'registration[username]'
// Now let's extract the value
const usernameValue = req.fields[usernameKey]
方法 B - 提取密钥并使用它们
const listOfKeys = Object.keys(req.fields)
listOfKeys.forEach(key => {
console.log(req.fields[key])
})
方法 B 很难区分每个值,但至少您可以提取它们。
祝你好运!