当我发送一个整数到后端,我收到它作为一个字符串,我不明白为什么?在FormData中发送整数
var formdata = new FormData();
for (var i = 0; i < scope.user.values.length; i++) {
formdata.append('values[]', scope.user.values[i]);
}
我收到值的字符串,而他们应该在整数
当我发送一个整数到后端,我收到它作为一个字符串,我不明白为什么?在FormData中发送整数
var formdata = new FormData();
for (var i = 0; i < scope.user.values.length; i++) {
formdata.append('values[]', scope.user.values[i]);
}
我收到值的字符串,而他们应该在整数
实际上,你不能发送integers
,一切都将字符串format
和key-value
对当您使用formData
。或者,您可以将它们转换为后端所需的datatype
。
与解决方案的尝试,它的工作
在您的控制器更新你的变量按您的要求
var a = []
$scope.b = [1,2,3,4]
for(var i =0 ; i < $scope.b.length; i++){ a.push(b[i]) }
通过HTML发送到服务器端的所有值作为字符串收到。你必须将这些数据转换为背后的整数,这不应该太难。如果您指定服务器端使用的是哪种语言,也许我们可以让您知道如何将字符串转换为整数。=,或者更好,您可以查看它。
谢谢,你用formdata建议还是有更好的解决方法? – user2099451
这取决于你想发送到服务器的数据,但一般来说formdata是好的。希望有所帮助。 – Y2H
相关规范:[接口表单数据:为了与其他算法交互,如果条目的值是一个字符串,则条目的类型是“字符串”,否则是“文件”。](https://xhr.spec.whatwg。 org /#interface-formdata) – blgt