在JavaScript中使用一个API,使用JS最大整数以上的ID
我正在构build一个从Vine API中提取数据的Node后端,并将其返回到我的前端。 根据这个问题,post和用户的ID是Numbertypes的,他们经常超过javascript可以支持的最大整数。
来自API的示例ID是934416748524998656
。 当我在前端使用JSON.parse
时,它会将最后两位数字replace为0,因为它不能读取那么高的数字。当我尝试使用特定的ID与API对话时,会导致问题,因为它现在不会识别ID。
有没有什么东西可以用另一种语言创build一个新的服务,我可以使用这些ID来处理? 我尝试使用toString()
来解释数字为string,而只是创build一个已经格式不正确的数字的string。
谢谢你的帮助
在parsing之前将数字改成一个string:
var responseData = JSON.parse( strJson.replace(/\: (\d{17,}),/g,': "$1",') );
注意这将错误地修改任何包含一个看起来像json值的大数字的string数据,但是我认为这是一个值得权衡的select。 不过,它不仅仅是一个很大的数字,而是(“:”+ theNumber +“,”); 我唯一能想象发生的事情就是有人“重新推特”JS无效的API响应。 如果你非常关心完美的话,请使用parsing器。
- 500错误:对于使用ResourceJS的Mongoose模型,对于path\“_ id \”中的值转换为ObjectId失败
- 在node.js中将Uint8Array 转换为整数
- FlowType包装获取而不会丢失默认types的注释
- 如何在node.js(express)中全局设置内容types
- 与打字稿`toArray`方法不工作的mongodb
- 是否有必要在Node.js中设置一个Content-Type?
- 检查node.js中的实际文件types
- 将自定义types的数组传递给来自node-pg和SQL注入的postgres函数
- MongoDB + Node.js:如何从一个外部文件使用架构为另一个架构?