如何在URL中传递false的布尔变量

时间:2015-04-20 05:34:57

标签: html get

我无法弄清楚如何通过URL字符串传递布尔值为false的变量。什么是正确的方法?

  • 域/页面?测试=假
  • 域/页面?测试=
  • 域/页面?测试= 0

4 个答案:

答案 0 :(得分:26)

网址是字符串,网址中的所有值都是字符串。当您在网址中看到i=0时,0是一个字符串。当您看到b=true时,true是一个字符串。当您看到s=时,该值为空字符串。

对于那些带有另一种含义的字符串 - 整数0或布尔true,比如说 - 必须告诉服务器端程序如何解释它们。通常,Web框架会对正确的类型进行智能猜测,或者有时会在模型中明确声明类型。

您将如何做到这完全取决于您使用的服务器端语言和框架(如果有)。

答案 1 :(得分:1)

这取决于您如何解释参数字符串。您可以编写可以转换字符串值的转换器" false"," 0",""为假。你可以采取所有方法,任何一种方法或混合。

答案 2 :(得分:0)

就像上面提到的那样,它取决于如何使用服务器端语言。要添加到答案中,如果您想在URL中传递true或false作为参数,则可以

服务器上的运行节点

const whatever = JSON.parse(queryStringParameter)

在服务器上运行php

$whatever = json_decode(queryStringParameter)

这两个选项都将为您提供可在服务器上使用的布尔类型。

答案 3 :(得分:0)

如果您可以制作 "1"=true"0"=false,那么在 JavaScript 中将参数值转换为布尔值会很容易,例如Node.js:

// !!1 = true;
// !!0 = false;

let test = !!parseInt(req.query.test);