在 Url.parse() 对象中,href 和 path 有什么区别?



我用NodeJS编写了以下代码:

var Url = require("url");
// create server ... req, res
var queryData = Url.parse(req.url, true);
console.log(queryData);
// listen (...)

对于来自浏览器/test?param1=val1的 url,queryData是这样的对象:

{ protocol: null,
  slashes: null,
  auth: null,
  host: null,
  port: null,
  hostname: null,
  hash: null,
  search: '?param1=val1',
  query: { param1: 'val1' },
  pathname: '/test',
  path: '/test?param1=val1',
  href: '/test?param1=val1' }

解析的 url 对象中的path字段和href字段有什么区别?

有没有不一样的情况?


编辑:我看到在文档中href是" The full URL that was originally parsed. Both the protocol and host are lowercased. "。

示例:"http://user:pass@host.com:8080/p/a/t/h?query=string#hash">

为什么我不喜欢这样href?如果我向 url 添加#hash,则对象的href不会更改

从文档中:

href:最初解析的完整 URL。协议和 主机为小写。例: "http://user:pass@host.com:8080/p/a/t/h?query=string#hash">

路径

:路径名和搜索的串联。例: '/p/a/t/h?query=string'

相关内容

  • 没有找到相关文章

最新更新