javascript - 第一个查询字符串参数未使用 qs npm 包解析
问题描述
我无法使用qs
npm 包解析第一个查询字符串参数。我究竟做错了什么?
我在控制台中执行这些命令
import * as qs from './qs'
var addr = "https://www.somesite.se/?title=querystring&action=edit"
var parsed = qs.parse(addr)
执行这些命令后parsed
具有以下值:
{ 'https://www.somesite.se/?title': 'querystring',
action: 'edit' }
这很奇怪。为什么title
返回的对象上没有属性?我希望 的parsed.title
值为'querystring'
。但事实并非如此。的parsed.title
值为undefined
。
为什么?
解决方案
qs
解析查询字符串。它不解析 URL。首先使用 URL 解析器 ( new URL(addr).search.substring(1)
) 从 URL 中获取查询字符串。
qs.parse("title=querystring&action=edit")
应该给你一个正确的答案。
现在我想起来......为什么还要使用qs
?new URL(addr).searchParams
应该已经给你解析的参数了......
推荐阅读
- r - R match.call:如何将变量传递给这个函数?
- mysql - SQL 数据库更正
- sql - 如何从主表中进行选择,但使用辅助链接表替换某些行?
- c - 获取指针指向的值
- amazon-s3 - 如何防止云端缓存 307 响应
- java - 如何在使用 OpenWebStart 的 webstart 应用程序中使用 Openjfx
- c - 如何在 C 中识别哪些条目是文件,哪些是目录
- python - 将箱线图和直方图组合成一个图
- 2d - KinematicBody2D 仅向左和向右移动
- javascript - AWS-Lambda 我收到一条错误消息“MissingRequiredParameter: Missing required key 'Data' in params”但没有调用“Data”参数